SnoozeViewController.swift 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  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. } else if AlarmSound.whichAlarm == "Sensor Change Alert" {
  87. UserDefaultsRepository.alertSAGEIsSnoozed.value = true
  88. UserDefaultsRepository.alertSAGESnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertSAGESnooze.value * 60 * 60))
  89. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  90. alarms.reloadIsSnoozed(key: "alertSAGEIsSnoozed", value: true)
  91. alarms.reloadSnoozeTime(key: "alertSAGESnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertSAGESnooze.value * 60 * 60)))
  92. } else if AlarmSound.whichAlarm == "Pump Change Alert" {
  93. UserDefaultsRepository.alertCAGEIsSnoozed.value = true
  94. UserDefaultsRepository.alertCAGESnoozedTime.value = Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertCAGESnooze.value * 60 * 60))
  95. guard let alarms = self.tabBarController!.viewControllers?[1] as? AlarmViewController else { return }
  96. alarms.reloadIsSnoozed(key: "alertCAGEIsSnoozed", value: true)
  97. alarms.reloadSnoozeTime(key: "alertCAGESnoozedTime", setNil: false, value: Date().addingTimeInterval(TimeInterval(UserDefaultsRepository.alertCAGESnooze.value * 60 * 60)))
  98. }
  99. }
  100. override func viewDidLoad() {
  101. super.viewDidLoad()
  102. if UserDefaultsRepository.forceDarkMode.value {
  103. overrideUserInterfaceStyle = .dark
  104. }
  105. SnoozeButton.layer.cornerRadius = 5
  106. SnoozeButton.contentEdgeInsets = UIEdgeInsets(top: 10,left: 10,bottom: 10,right: 10)
  107. }
  108. }