|
|
|
|
@ -17,14 +17,12 @@ import 'package:doctor_app_flutter/core/model/hospitals/get_hospitals_response_m
|
|
|
|
|
import 'package:doctor_app_flutter/core/service/authentication_service.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/service/hospitals/hospitals_service.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/viewModel/base_view_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/locator.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/doctor/clinic_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/doctor/profile_req_Model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/doctor/user_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/root_page.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/screens/auth/login_screen.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/util/dr_app_toast_msg.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/util/helpers.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
|
|
|
|
|
@ -34,7 +32,6 @@ import 'package:flutter/material.dart';
|
|
|
|
|
import 'package:flutter/services.dart';
|
|
|
|
|
import 'package:local_auth/auth_strings.dart';
|
|
|
|
|
import 'package:local_auth/local_auth.dart';
|
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
|
|
|
|
|
|
enum APP_STATUS { LOADING, UNAUTHENTICATED, AUTHENTICATED, UNVERIFIED }
|
|
|
|
|
|
|
|
|
|
@ -76,7 +73,7 @@ class AuthenticationViewModel extends BaseViewModel {
|
|
|
|
|
APP_STATUS app_status = APP_STATUS.LOADING;
|
|
|
|
|
|
|
|
|
|
AuthenticationViewModel({bool checkDeviceInfo = false}) {
|
|
|
|
|
getDeviceInfoFromFirebase();
|
|
|
|
|
getDeviceInfoFromFirebase();
|
|
|
|
|
getDoctorProfile();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -303,7 +300,7 @@ class AuthenticationViewModel extends BaseViewModel {
|
|
|
|
|
license: true,
|
|
|
|
|
projectID: clinicInfo.projectID,
|
|
|
|
|
tokenID: '',
|
|
|
|
|
languageID: 2);
|
|
|
|
|
languageID: 2);//TODO change the lan
|
|
|
|
|
await _authService.getDoctorProfileBasedOnClinic(docInfo);
|
|
|
|
|
if (_authService.hasError) {
|
|
|
|
|
error = _authService.error;
|
|
|
|
|
@ -362,7 +359,12 @@ class AuthenticationViewModel extends BaseViewModel {
|
|
|
|
|
if (Platform.isIOS) {
|
|
|
|
|
_firebaseMessaging.requestNotificationPermissions();
|
|
|
|
|
}
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
} catch (e) {
|
|
|
|
|
Helpers.showErrorToast("fdfdfdfdf"+e.toString());
|
|
|
|
|
}
|
|
|
|
|
var token = await _firebaseMessaging.getToken();
|
|
|
|
|
if (DEVICE_TOKEN == "") {
|
|
|
|
|
DEVICE_TOKEN = token;
|
|
|
|
|
@ -416,39 +418,25 @@ class AuthenticationViewModel extends BaseViewModel {
|
|
|
|
|
/// logout function
|
|
|
|
|
logout({bool isFromLogin = false}) async {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
DEVICE_TOKEN = "";
|
|
|
|
|
DEVICE_TOKEN = "";
|
|
|
|
|
String lang = await sharedPref.getString(APP_Language);
|
|
|
|
|
String errr = await sharedPref.getString("LogOut Error");
|
|
|
|
|
|
|
|
|
|
await Helpers.clearSharedPref();
|
|
|
|
|
doctorProfile = null;
|
|
|
|
|
sharedPref.setString(APP_Language, lang);
|
|
|
|
|
sharedPref.setString("LogOut Error", errr);
|
|
|
|
|
|
|
|
|
|
deleteUser();
|
|
|
|
|
await getDeviceInfoFromFirebase();
|
|
|
|
|
await getDeviceInfoFromFirebase();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.isFromLogin = isFromLogin;
|
|
|
|
|
app_status = APP_STATUS.UNAUTHENTICATED;
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
catch (e) {
|
|
|
|
|
sharedPref.setString("LogOut Error", e);
|
|
|
|
|
}
|
|
|
|
|
Navigator.pushAndRemoveUntil(
|
|
|
|
|
AppGlobal.CONTEX,
|
|
|
|
|
FadePage(
|
|
|
|
|
page: RootPage(),
|
|
|
|
|
),
|
|
|
|
|
(r) => false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
deleteUser(){
|
|
|
|
|
user = null;
|
|
|
|
|
unverified = false;
|
|
|
|
|
isLogin = false;
|
|
|
|
|
// notifyListeners();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|