From fbc95771b895f90647952ad975eea5a9962a5330 Mon Sep 17 00:00:00 2001 From: ItsAdityaKSingh Date: Sat, 22 Jan 2022 03:20:11 +0530 Subject: [PATCH 1/5] model changes --- lib/view_model/home_view_model.dart | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/lib/view_model/home_view_model.dart b/lib/view_model/home_view_model.dart index 64f92431..ec21976a 100644 --- a/lib/view_model/home_view_model.dart +++ b/lib/view_model/home_view_model.dart @@ -41,12 +41,16 @@ class HomeViewModel extends BaseModel { if (beacon != null) { hasStarted = DateTime.now() .isAfter(DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)); - if (hasStarted) { - navigationService.pushScreen('/hikeScreen', - arguments: HikeScreen( - beacon, - isLeader: true, - )); + if (hasStarted || + DateTime.now() == + DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)) { + navigationService.pushScreen( + '/hikeScreen', + arguments: HikeScreen( + beacon, + isLeader: true, + ), + ); } else { localNotif.scheduleNotification(beacon); setState(ViewState.idle); @@ -74,10 +78,13 @@ class HomeViewModel extends BaseModel { if (beacon != null) { hasStarted = DateTime.now() .isAfter(DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)); - - if (hasStarted) { - navigationService.pushScreen('/hikeScreen', - arguments: HikeScreen(beacon, isLeader: false)); + if (hasStarted || + DateTime.now() == + DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)) { + navigationService.pushScreen( + '/hikeScreen', + arguments: HikeScreen(beacon, isLeader: false), + ); } else { localNotif.scheduleNotification(beacon); setState(ViewState.idle); From e1b3fc82711e3c335bfbc01e98d7b6399bfffbf1 Mon Sep 17 00:00:00 2001 From: ItsAdityaKSingh Date: Sat, 22 Jan 2022 03:20:28 +0530 Subject: [PATCH 2/5] reduced time by a minute --- lib/components/create_join_dialog.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/components/create_join_dialog.dart b/lib/components/create_join_dialog.dart index 8a6a0b75..2c2ed0cd 100644 --- a/lib/components/create_join_dialog.dart +++ b/lib/components/create_join_dialog.dart @@ -221,7 +221,8 @@ class CreateJoinBeaconDialog { model.startingTime.minute, ); // localNotif.scheduleNotification(); - if (model.startsAt.isBefore(DateTime.now())) { + if (model.startsAt.isBefore(DateTime.now() + .subtract(Duration(minutes: 1)))) { navigationService.showSnackBar( "Enter a valid date and time!!"); return; From ebfa19b271e69e2a00050a155f8fa9c99095e58f Mon Sep 17 00:00:00 2001 From: ItsAdityaKSingh Date: Sat, 22 Jan 2022 03:35:04 +0530 Subject: [PATCH 3/5] snackbar changes --- lib/view_model/home_view_model.dart | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/lib/view_model/home_view_model.dart b/lib/view_model/home_view_model.dart index ec21976a..9e589061 100644 --- a/lib/view_model/home_view_model.dart +++ b/lib/view_model/home_view_model.dart @@ -41,9 +41,7 @@ class HomeViewModel extends BaseModel { if (beacon != null) { hasStarted = DateTime.now() .isAfter(DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)); - if (hasStarted || - DateTime.now() == - DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)) { + if (hasStarted) { navigationService.pushScreen( '/hikeScreen', arguments: HikeScreen( @@ -55,7 +53,7 @@ class HomeViewModel extends BaseModel { localNotif.scheduleNotification(beacon); setState(ViewState.idle); navigationService.showSnackBar( - 'Beacon has not yet started! Please come back at ${DateFormat("hh:mm a, d/M/y").format(DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)).toString()}', + 'Yay! New beacon created for ${DateFormat("hh:mm a, d/M/y").format(DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)).toString()}', ); return; } @@ -78,9 +76,7 @@ class HomeViewModel extends BaseModel { if (beacon != null) { hasStarted = DateTime.now() .isAfter(DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)); - if (hasStarted || - DateTime.now() == - DateTime.fromMillisecondsSinceEpoch(beacon.startsAt)) { + if (hasStarted) { navigationService.pushScreen( '/hikeScreen', arguments: HikeScreen(beacon, isLeader: false), From 7dfecb63db2c4730a8b2b1e1cf785f01aed81df2 Mon Sep 17 00:00:00 2001 From: ItsAdityaKSingh Date: Sat, 22 Jan 2022 03:42:11 +0530 Subject: [PATCH 4/5] punctuation --- lib/components/create_join_dialog.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/components/create_join_dialog.dart b/lib/components/create_join_dialog.dart index 2c2ed0cd..a1361702 100644 --- a/lib/components/create_join_dialog.dart +++ b/lib/components/create_join_dialog.dart @@ -223,8 +223,8 @@ class CreateJoinBeaconDialog { // localNotif.scheduleNotification(); if (model.startsAt.isBefore(DateTime.now() .subtract(Duration(minutes: 1)))) { - navigationService.showSnackBar( - "Enter a valid date and time!!"); + navigationService + .showSnackBar("Enter a valid date and time!"); return; } model.createHikeRoom(); From fb8f3889fa1cd042c397c7299cdeb0284af3960c Mon Sep 17 00:00:00 2001 From: ItsAdityaKSingh Date: Mon, 7 Mar 2022 19:46:58 +0530 Subject: [PATCH 5/5] fix: create hikes immediately --- lib/components/create_join_dialog.dart | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/components/create_join_dialog.dart b/lib/components/create_join_dialog.dart index e9b5282f..fcef8a36 100644 --- a/lib/components/create_join_dialog.dart +++ b/lib/components/create_join_dialog.dart @@ -274,9 +274,10 @@ class CreateJoinBeaconDialog { model.startingTime.minute, ); // localNotif.scheduleNotification(); - if (model.startsAt.isBefore(DateTime.now())) { + if (model.startsAt.isBefore(DateTime.now() + .subtract(Duration(minutes: 1)))) { navigationService.showSnackBar( - "Enter a valid date and time!!"); + "Enter a valid date and time!"); return; } model.createHikeRoom();