SnoozeViewController.swift 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. //
  2. // SecondViewController.swift
  3. // LoopFollow
  4. //
  5. // Created by Jon Fawcett on 6/1/20.
  6. // Copyright © 2020 Jon Fawcett. All rights reserved.
  7. //
  8. import UIKit
  9. class SnoozeViewController: UIViewController {
  10. var snoozeTabItem: UITabBarItem = UITabBarItem()
  11. var mainTabItem: UITabBarItem = UITabBarItem()
  12. @IBOutlet weak var SnoozeButton: UIButton!
  13. @IBOutlet weak var BGLabel: UILabel!
  14. @IBOutlet weak var DirectionLabel: UILabel!
  15. @IBOutlet weak var DeltaLabel: UILabel!
  16. @IBOutlet weak var MinAgoLabel: UILabel!
  17. @IBOutlet weak var AlertLabel: UILabel!
  18. @IBAction func SnoozeButton(_ sender: UIButton) {
  19. AlarmSound.stop()
  20. guard let mainVC = self.tabBarController!.viewControllers?[0] as? MainViewController else { return }
  21. mainVC.startCheckAlarmTimer(time: mainVC.checkAlarmInterval)
  22. let tabBarControllerItems = self.tabBarController?.tabBar.items
  23. if let arrayOfTabBarItems = tabBarControllerItems as! AnyObject as? NSArray{
  24. snoozeTabItem = arrayOfTabBarItems[2] as! UITabBarItem
  25. }
  26. setSnoozeTime()
  27. tabBarController?.selectedIndex = 0
  28. snoozeTabItem.isEnabled = false;
  29. }
  30. func updateDisplayWhenTriggered(bgVal: String, directionVal: String, deltaVal: String, minAgoVal: String, alertLabelVal: String){
  31. loadViewIfNeeded()
  32. BGLabel.text = bgVal
  33. DirectionLabel.text = directionVal
  34. DeltaLabel.text = deltaVal
  35. MinAgoLabel.text = minAgoVal
  36. AlertLabel.text = alertLabelVal
  37. }
  38. func setSnoozeTime()
  39. {
  40. if AlarmSound.whichAlarm == "Temporary Alert" {
  41. UserDefaultsRepository.alertTemporaryActive.value = false
  42. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  43. alarms.reloadIsSnoozed(key: "alertTemporaryActive", value: false)
  44. } else if AlarmSound.whichAlarm == "Urgent Low Alert" {
  45. UserDefaultsRepository.alertUrgentLowIsSnoozed.value = true
  46. UserDefaultsRepository.alertUrgentLowSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertUrgentLowSnooze.value * 60))
  47. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  48. alarms.reloadIsSnoozed(key: "alertUrgentLowIsSnoozed", value: true)
  49. alarms.reloadSnoozeTime(key: "alertUrgentLowSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertUrgentLowSnooze.value * 60)))
  50. } else if AlarmSound.whichAlarm == "Low Alert" {
  51. UserDefaultsRepository.alertLowIsSnoozed.value = true
  52. UserDefaultsRepository.alertLowSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertLowSnooze.value * 60))
  53. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  54. alarms.reloadIsSnoozed(key: "alertLowIsSnoozed", value: true)
  55. alarms.reloadSnoozeTime(key: "alertLowSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertLowSnooze.value * 60)))
  56. } else if AlarmSound.whichAlarm == "High Alert" {
  57. UserDefaultsRepository.alertHighIsSnoozed.value = true
  58. UserDefaultsRepository.alertHighSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertHighSnooze.value * 60))
  59. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  60. alarms.reloadIsSnoozed(key: "alertHighIsSnoozed", value: true)
  61. alarms.reloadSnoozeTime(key: "alertHighSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertHighSnooze.value * 60)))
  62. } else if AlarmSound.whichAlarm == "Urgent High Alert" {
  63. UserDefaultsRepository.alertUrgentHighIsSnoozed.value = true
  64. UserDefaultsRepository.alertUrgentHighSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertUrgentHighSnooze.value * 60))
  65. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  66. alarms.reloadIsSnoozed(key: "alertUrgentHighIsSnoozed", value: true)
  67. alarms.reloadSnoozeTime(key: "alertUrgentHighSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertUrgentHighSnooze.value * 60)))
  68. } else if AlarmSound.whichAlarm == "Fast Drop Alert" {
  69. UserDefaultsRepository.alertFastDropIsSnoozed.value = true
  70. UserDefaultsRepository.alertFastDropSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertFastDropSnooze.value * 60))
  71. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  72. alarms.reloadIsSnoozed(key: "alertFastDropIsSnoozed", value: true)
  73. alarms.reloadSnoozeTime(key: "alertFastDropSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertFastDropSnooze.value * 60)))
  74. } else if AlarmSound.whichAlarm == "Fast Rise Alert" {
  75. UserDefaultsRepository.alertFastRiseIsSnoozed.value = true
  76. UserDefaultsRepository.alertFastRiseSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertFastRiseSnooze.value * 60))
  77. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  78. alarms.reloadIsSnoozed(key: "alertFastRiseIsSnoozed", value: true)
  79. alarms.reloadSnoozeTime(key: "alertFastRiseSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertFastRiseSnooze.value * 60)))
  80. } else if AlarmSound.whichAlarm == "Missed Reading Alert" {
  81. UserDefaultsRepository.alertMissedReadingIsSnoozed.value = true
  82. UserDefaultsRepository.alertMissedReadingSnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertMissedReadingSnooze.value * 60))
  83. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  84. alarms.reloadIsSnoozed(key: "alertMissedReadingIsSnoozed", value: true)
  85. alarms.reloadSnoozeTime(key: "alertMissedReadingSnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertMissedReadingSnooze.value * 60)))
  86. }
  87. }
  88. override func viewDidLoad() {
  89. super.viewDidLoad()
  90. SnoozeButton.layer.cornerRadius = 5
  91. SnoozeButton.contentEdgeInsets = UIEdgeInsets(top: 10,left: 10,bottom: 10,right: 10)
  92. }
  93. }