Exception Widget & Fixes

updare-to-3.32.sultan
Aamir Muhammad 3 months ago
parent 4d4e7e5a5b
commit e6dad37ca3

@ -15,6 +15,7 @@ import 'package:hmg_patient_app/models/Authentication/check_paitent_authenticati
import 'package:hmg_patient_app/models/Authentication/select_device_imei_res.dart';
import 'package:hmg_patient_app/models/InPatientServices/get_admission_info_response_model.dart';
import 'package:hmg_patient_app/models/InPatientServices/get_admission_request_info_response_model.dart';
import 'package:hmg_patient_app/new_ui/new_ext.dart';
import 'package:hmg_patient_app/new_ui/otp/otp_validation_bootmsheet_widget.dart';
import 'package:hmg_patient_app/pages/landing/landing_page.dart';
import 'package:hmg_patient_app/pages/login/register_new.dart';
@ -37,6 +38,7 @@ import 'package:hmg_patient_app/widgets/transitions/fade_page.dart';
import 'package:local_auth/local_auth.dart';
import 'package:provider/provider.dart';
import '../../new_ui/exception_widget/ExceptionBottomSheet.dart';
import '../../widgets/dialogs/confirm_dialog.dart';
class SavedLogin extends StatefulWidget {
@ -330,7 +332,14 @@ class _SavedLogin extends State<SavedLogin> {
);
} on PlatformException catch (e) {
GifLoaderDialogUtils.hideDialog(context);
AppToast.showErrorToast(message: 'Please enable your Touch or Face ID');
context.showBottomSheet(
child: ExceptionBottomSheet(
message: "Please enable your Touch or Face ID",
showCancel: false,
onOkPressed: () {
Navigator.of(context).pop();
}),
);
return;
}
@ -369,19 +378,29 @@ class _SavedLogin extends State<SavedLogin> {
// this.patientOutSA = result['PatientOutSA'];
// setDefault();
sharedPref.setInt(LAST_LOGIN, lastLogin);
checkActivationCode(null, lastLogin, result['LogInTokenID']);
checkActivationCode(null, lastLogin, result['LogInTokenID'], onWrongActivationCode: (String? message) {});
} else if (result['ErrorEndUserMessage'] != null) {
ConfirmDialog dialog = new ConfirmDialog(
context: context,
confirmMessage: result['ErrorEndUserMessage'],
okText: TranslationBase.of(context).confirm,
cancelText: TranslationBase.of(context).cancel_nocaps,
okFunction: () => {
ConfirmDialog.closeAlertDialog(context),
Navigator.of(context).pushReplacement(FadePage(page: WelcomeLogin())),
},
cancelFunction: () => {});
dialog.showAlertDialog(context);
GifLoaderDialogUtils.hideDialog(context);
context.showBottomSheet(
child: ExceptionBottomSheet(
message: result['ErrorEndUserMessage'],
showCancel: true,
onOkPressed: () {
Navigator.of(context).pop();
Navigator.of(context).pushReplacement(FadePage(page: WelcomeLogin()));
}),
);
// ConfirmDialog dialog = new ConfirmDialog(
// context: context,
// confirmMessage: result['ErrorEndUserMessage'],
// okText: TranslationBase.of(context).confirm,
// cancelText: TranslationBase.of(context).cancel_nocaps,
// okFunction: () => {
// ConfirmDialog.closeAlertDialog(context),
// Navigator.of(context).pushReplacement(FadePage(page: WelcomeLogin())),
// },
// cancelFunction: () => {});
// dialog.showAlertDialog(context);
}
}).catchError((err) {
GifLoaderDialogUtils.hideDialog(context);
@ -389,7 +408,7 @@ class _SavedLogin extends State<SavedLogin> {
});
}
checkActivationCode(String? value, int loginType, String? loginToken) async {
checkActivationCode(String? value, int loginType, String? loginToken, {required Function(String? message) onWrongActivationCode}) async {
AppGlobal.context = context;
GifLoaderDialogUtils.showMyDialog(context);
var request = authService
@ -416,10 +435,11 @@ class _SavedLogin extends State<SavedLogin> {
{
//699 block run here
GifLoaderDialogUtils.hideDialog(context),
Future.delayed(Duration(seconds: 2), () {
AppToast.showErrorToast(message: result.errorEndUserMessage);
Navigator.pop(context);
})
onWrongActivationCode(result.errorEndUserMessage),
// Future.delayed(Duration(seconds: 2), () {
// AppToast.showErrorToast(message: result.errorEndUserMessage);
// Navigator.pop(context);
// })
}
else
{
@ -443,9 +463,10 @@ class _SavedLogin extends State<SavedLogin> {
{
// Navigator.of(context).pop(),
GifLoaderDialogUtils.hideDialog(context),
Future.delayed(Duration(seconds: 1), () {
AppToast.showErrorToast(message: result, localContext: context);
}),
onWrongActivationCode(result),
// Future.delayed(Duration(seconds: 1), () {
// AppToast.showErrorToast(message: result, localContext: context);
// }),
projectViewModel.analytics.loginRegistration.login_fail(error: result),
projectViewModel.analytics.errorTracking.log('otp_verification_at_confirm_login', error: result)
}
@ -576,7 +597,7 @@ class _SavedLogin extends State<SavedLogin> {
else
{
if (value['IsAuthenticated'])
{this.checkActivationCode(null, type, value['LogInTokenID'])}
{this.checkActivationCode(null, type, value['LogInTokenID'], onWrongActivationCode: (String? message) {})}
else
{
AppToast.showErrorToast(message: value['errorMessage']),
@ -592,17 +613,27 @@ class _SavedLogin extends State<SavedLogin> {
.catchError((err) {
print(err);
GifLoaderDialogUtils.hideDialog(context);
ConfirmDialog dialog = new ConfirmDialog(
context: context,
confirmMessage: err,
okText: TranslationBase.of(context).confirm,
cancelText: TranslationBase.of(context).cancel_nocaps,
okFunction: () => {
ConfirmDialog.closeAlertDialog(context),
Navigator.of(context).push(FadePage(page: RegisterNew())),
},
cancelFunction: () => {});
dialog.showAlertDialog(context);
context.showBottomSheet(
child: ExceptionBottomSheet(
message: err,
showCancel: true,
onOkPressed: () {
Navigator.of(context).pop();
Navigator.of(context).pushReplacement(FadePage(page: RegisterNew()));
}),
);
// ConfirmDialog dialog = new ConfirmDialog(
// context: context,
// confirmMessage: err,
// okText: TranslationBase.of(context).confirm,
// cancelText: TranslationBase.of(context).cancel_nocaps,
// okFunction: () => {
// ConfirmDialog.closeAlertDialog(context),
// Navigator.of(context).push(FadePage(page: RegisterNew())),
// },
// cancelFunction: () => {});
// dialog.showAlertDialog(context);
projectViewModel.analytics.loginRegistration.login_fail(error: err.toString());
});
}
@ -631,28 +662,20 @@ class _SavedLogin extends State<SavedLogin> {
}
}).catchError((r) {
GifLoaderDialogUtils.hideDialog(context);
AppToast.showErrorToast(message: r.toString());
context.showBottomSheet(
child: ExceptionBottomSheet(
message: r,
showCancel: false,
onOkPressed: () {
Navigator.of(context).pop();
}),
);
// AppToast.showErrorToast(message: r.toString());
});
}
var tempType;
//
// startSMSService(type, String loginToken) {
// tempType = type;
// SMSOTP(
// context,
// type,
// phoneController.text,
// (value) {
// this.checkActivationCode(value, type, loginToken);
// },
// () => {
// Navigator.pop(context),
// },
// ).displayDialog(context);
// }
startSMSService(type, String loginToken) {
tempType = type;
late SMSOTP smsOtp; // Declare the variable first
@ -662,8 +685,17 @@ class _SavedLogin extends State<SavedLogin> {
type,
phoneController!.text,
(code) {
smsOtp.dispose(); // Now we can reference it
this.checkActivationCode(code, type, loginToken);
checkActivationCode(code, type, loginToken, onWrongActivationCode: (String? message) {
context.showBottomSheet(
child: ExceptionBottomSheet(
message: message.toString(),
onOkPressed: () {
Navigator.of(context).pop();
// Don't resume timer here, let it continue naturally when user tries again
},
),
);
});
},
() {
smsOtp.dispose(); // Now we can reference it

Loading…
Cancel
Save