File tree Expand file tree Collapse file tree 3 files changed +27
-20
lines changed Expand file tree Collapse file tree 3 files changed +27
-20
lines changed Original file line number Diff line number Diff line change @@ -334,6 +334,18 @@ class AlarmControlController extends GetxController {
334
334
stream: AudioStream .alarm,
335
335
);
336
336
337
+
338
+ if (currentlyRingingAlarm.value.days.every ((element) => element == false )) {
339
+ currentlyRingingAlarm.value.isEnabled = false ;
340
+ if (currentlyRingingAlarm.value.isSharedAlarmEnabled == false ) {
341
+ await IsarDb .updateAlarm (currentlyRingingAlarm.value);
342
+ } else {
343
+ await FirestoreDb .updateAlarm (
344
+ currentlyRingingAlarm.value.ownerId,
345
+ currentlyRingingAlarm.value,
346
+ );
347
+ }
348
+ }
337
349
338
350
_subscription.cancel ();
339
351
_currentTimeTimer? .cancel ();
Original file line number Diff line number Diff line change @@ -4,6 +4,8 @@ import 'package:get/get.dart';
4
4
import 'package:ultimate_alarm_clock/app/modules/settings/controllers/theme_controller.dart' ;
5
5
import 'package:ultimate_alarm_clock/app/utils/constants.dart' ;
6
6
import 'package:ultimate_alarm_clock/app/utils/utils.dart' ;
7
+ import 'package:ultimate_alarm_clock/app/data/providers/isar_provider.dart' ;
8
+ import 'package:ultimate_alarm_clock/app/data/providers/firestore_provider.dart' ;
7
9
8
10
import '../controllers/alarm_ring_controller.dart' ;
9
11
@@ -185,12 +187,24 @@ class AlarmControlView extends GetView<AlarmControlController> {
185
187
kprimaryColor,
186
188
),
187
189
),
188
- onPressed: () {
190
+ onPressed: () async {
189
191
Utils .hapticFeedback ();
190
192
if (controller
191
193
.currentlyRingingAlarm.value.isGuardian) {
192
194
controller.guardianTimer.cancel ();
193
195
}
196
+
197
+ if (controller.currentlyRingingAlarm.value.days.every ((element) => element == false )) {
198
+ controller.currentlyRingingAlarm.value.isEnabled = false ;
199
+ if (controller.currentlyRingingAlarm.value.isSharedAlarmEnabled == false ) {
200
+ await IsarDb .updateAlarm (controller.currentlyRingingAlarm.value);
201
+ } else {
202
+ await FirestoreDb .updateAlarm (
203
+ controller.currentlyRingingAlarm.value.ownerId,
204
+ controller.currentlyRingingAlarm.value,
205
+ );
206
+ }
207
+ }
194
208
if (Utils .isChallengeEnabled (
195
209
controller.currentlyRingingAlarm.value,
196
210
)) {
Original file line number Diff line number Diff line change @@ -124,25 +124,6 @@ class SplashScreenController extends GetxController {
124
124
.every ((element) => element == false )) {
125
125
currentlyRingingAlarm.value.isEnabled = false ;
126
126
127
- if (currentlyRingingAlarm.value.isSharedAlarmEnabled == false ) {
128
- IsarDb .updateAlarm (currentlyRingingAlarm.value);
129
- } else {
130
- FirestoreDb .updateAlarm (
131
- currentlyRingingAlarm.value.ownerId,
132
- currentlyRingingAlarm.value,
133
- );
134
- }
135
- } else if (currentlyRingingAlarm.value.isOneTime == true ) {
136
- // If the alarm has to repeat on one day, but ring just once,
137
- // we will keep seting its days to false until it will never ring
138
- int currentDay = DateTime .now ().weekday - 1 ;
139
- currentlyRingingAlarm.value.days[currentDay] = false ;
140
-
141
- if (currentlyRingingAlarm.value.days
142
- .every ((element) => element == false )) {
143
- currentlyRingingAlarm.value.isEnabled = false ;
144
- }
145
-
146
127
if (currentlyRingingAlarm.value.isSharedAlarmEnabled == false ) {
147
128
IsarDb .updateAlarm (currentlyRingingAlarm.value);
148
129
} else {
You can’t perform that action at this time.
0 commit comments