Ver código fonte

Merge pull request #425 from loopandlearn/honor-global-snooze

Fix: Honor the global "Snooze All" setting
Jonas Björkert 1 ano atrás
pai
commit
1ce2edf187
1 arquivos alterados com 11 adições e 0 exclusões
  1. 11 0
      LoopFollow/Alarm/AlarmManager.swift

+ 11 - 0
LoopFollow/Alarm/AlarmManager.swift

@@ -43,6 +43,17 @@ class AlarmManager {
     func checkAlarms(data: AlarmData) {
         let now = Date()
         var alarmTriggered = false
+
+        let config = Storage.shared.alarmConfiguration.value
+
+        // Honor the "Snooze All" setting. If active, stop any current alarm and exit.
+        if let snoozeUntil = config.snoozeUntil, snoozeUntil > now {
+            if Observable.shared.currentAlarm.value != nil {
+                stopAlarm()
+            }
+            return
+        }
+
         let alarms = Storage.shared.alarms.value
 
         let sorted = alarms.sorted(by: Alarm.byPriorityThenSpec)