diff --git a/lib/core/service/AuthenticatedUserObject.dart b/lib/core/service/AuthenticatedUserObject.dart index 1aaa4755..600e17e1 100644 --- a/lib/core/service/AuthenticatedUserObject.dart +++ b/lib/core/service/AuthenticatedUserObject.dart @@ -2,16 +2,17 @@ import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; -class AuthenticatedUserObject{ +class AuthenticatedUserObject { AuthenticatedUser user; AppSharedPreferences sharedPref = AppSharedPreferences(); bool isLogin = false; - AuthenticatedUserObject(){ + + AuthenticatedUserObject() { getUser(); } getUser() async { - if (user==null) { + if (user == null) { var userData = await sharedPref.getObject(USER_PROFILE); if (userData != null) user = AuthenticatedUser.fromJson(userData); } @@ -20,4 +21,7 @@ class AuthenticatedUserObject{ this.isLogin = isLogin != null; } + logout() async { + isLogin = false; + } } diff --git a/lib/core/service/base_service.dart b/lib/core/service/base_service.dart index f2820dc1..fdb80604 100644 --- a/lib/core/service/base_service.dart +++ b/lib/core/service/base_service.dart @@ -17,6 +17,7 @@ class BaseService { AppSharedPreferences sharedPref = AppSharedPreferences(); BaseService() { + authenticatedUserObject.getUser(); user = authenticatedUserObject.user; // getUser(); } diff --git a/lib/core/viewModels/medical/medical_view_model.dart b/lib/core/viewModels/medical/medical_view_model.dart index 4563f615..f8b14c6e 100644 --- a/lib/core/viewModels/medical/medical_view_model.dart +++ b/lib/core/viewModels/medical/medical_view_model.dart @@ -12,7 +12,7 @@ class MedicalViewModel extends BaseViewModel { _medicalService.appoitmentAllHistoryResultList; getAppointmentHistory() async { - if (authenticatedUserObject.isLogin) { + if (authenticatedUserObject.isLogin) { setState(ViewState.Busy); if (_medicalService.appoitmentAllHistoryResultList.length == 0) await _medicalService.getAppointmentHistory(); diff --git a/lib/pages/AlHabibMedicalService/all_habib_medical_service_page.dart b/lib/pages/AlHabibMedicalService/all_habib_medical_service_page.dart index 3fa2aeab..5117ba4b 100644 --- a/lib/pages/AlHabibMedicalService/all_habib_medical_service_page.dart +++ b/lib/pages/AlHabibMedicalService/all_habib_medical_service_page.dart @@ -39,6 +39,7 @@ class _AllHabibMedicalServiceState extends State { return AppScaffold( isShowAppBar: true, appBarTitle: TranslationBase.of(context).alhabiServices, + isShowDecPage: false, body: Column( children: [ Expanded( diff --git a/lib/pages/ContactUs/hmg_service.dart b/lib/pages/ContactUs/contact_us_page.dart similarity index 93% rename from lib/pages/ContactUs/hmg_service.dart rename to lib/pages/ContactUs/contact_us_page.dart index 4f19e8f8..7d2192f9 100644 --- a/lib/pages/ContactUs/hmg_service.dart +++ b/lib/pages/ContactUs/contact_us_page.dart @@ -6,12 +6,12 @@ import 'package:flutter/material.dart'; import '../../uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/pages/ErService/widgets/card_common.dart'; -class HmgServicePage extends StatefulWidget { +class ContactUsPage extends StatefulWidget { @override - _HmgServicePageState createState() => _HmgServicePageState(); + _ContactUsPageState createState() => _ContactUsPageState(); } -class _HmgServicePageState extends State { +class _ContactUsPageState extends State { LocationUtils locationUtils; @@ -29,6 +29,7 @@ class _HmgServicePageState extends State { return AppScaffold( isShowAppBar: true,//widget.isAppbar, appBarTitle: "HMG Services",//TranslationBase.of(context).bookAppo, + isShowDecPage: false, body: Container( margin: EdgeInsets.fromLTRB(10.0, 20.0, 10.0, 10.0), child: Column( diff --git a/lib/pages/landing/home_page.dart b/lib/pages/landing/home_page.dart index b20648e2..933f6f50 100644 --- a/lib/pages/landing/home_page.dart +++ b/lib/pages/landing/home_page.dart @@ -2,7 +2,7 @@ import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/all_habib_medical_service_page.dart'; -import 'package:diplomaticquarterapp/pages/ContactUs/hmg_service.dart'; +import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart'; import 'package:diplomaticquarterapp/pages/ErService/ErOptions.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/feedback/feedback_home_page.dart'; @@ -663,7 +663,7 @@ class _HomePageState extends State { // Navigator.push( // context, FadePage(page: FeedbackHomePage())); Navigator.push( - context, FadePage(page: HmgServicePage())); + context, FadePage(page: ContactUsPage())); }, child: Container( width: double.infinity, diff --git a/lib/pages/login/login.dart b/lib/pages/login/login.dart index 22178444..a575f8c4 100644 --- a/lib/pages/login/login.dart +++ b/lib/pages/login/login.dart @@ -1,5 +1,6 @@ import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/config/size_config.dart'; +import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart'; import 'package:diplomaticquarterapp/core/viewModels/appointment_rate_view_model.dart'; import 'package:diplomaticquarterapp/locator.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_response.dart'; @@ -40,6 +41,9 @@ class _Login extends State { AppointmentRateViewModel appointmentRateViewModel = locator(); + AuthenticatedUserObject authenticatedUserObject = locator(); + + @override void initState() { // getDeviceToken(); @@ -196,6 +200,7 @@ class _Login extends State { // request.isRegister = false; this.authService.checkActivationCode(request, code).then((result) => { result = CheckActivationCode.fromJson(result), + authenticatedUserObject.getUser(), this.sharedPref.setObject(USER_PROFILE, result.list), this.sharedPref.setObject(LOGIN_TOKEN_ID, result.logInTokenID), this.sharedPref.setString(TOKEN, result.authenticationTokenID), diff --git a/lib/pages/medical/medical_profile_page.dart b/lib/pages/medical/medical_profile_page.dart index 2c5a6fb2..e7d75e7f 100644 --- a/lib/pages/medical/medical_profile_page.dart +++ b/lib/pages/medical/medical_profile_page.dart @@ -74,6 +74,7 @@ class _MedicalProfilePageState extends State { fit: BoxFit.cover, width: double.infinity, ), + if(model.authenticatedUserObject.isLogin) ListView.builder( itemBuilder: (context, index) => TimeLineWidget( isUp: index % 2 == 1, diff --git a/lib/services/authentication/auth_provider.dart b/lib/services/authentication/auth_provider.dart index 1598184c..c8d88f9d 100644 --- a/lib/services/authentication/auth_provider.dart +++ b/lib/services/authentication/auth_provider.dart @@ -1,5 +1,6 @@ import 'package:diplomaticquarterapp/config/config.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; +import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_request.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; import 'package:diplomaticquarterapp/models/Authentication/check_activation_code_response.dart'; @@ -14,6 +15,8 @@ import 'package:diplomaticquarterapp/core/service/client/base_app_client.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:flutter/cupertino.dart'; +import '../../locator.dart'; + // SharedPreferences sharedPref = new SharedPreferences(); enum APP_STATUS { LOADING, UNAUTHENTICATED, AUTHENTICATED } AppSharedPreferences sharedPref = new AppSharedPreferences(); @@ -41,6 +44,8 @@ class AuthProvider with ChangeNotifier { bool isLogin = false; bool isLoading = true; dynamic authenticatedUser; + AuthenticatedUserObject authenticatedUserObject = locator(); + AuthProvider() { getUserAuthentication(); } diff --git a/lib/widgets/drawer/app_drawer_widget.dart b/lib/widgets/drawer/app_drawer_widget.dart index 3c5ac608..9a387e4e 100644 --- a/lib/widgets/drawer/app_drawer_widget.dart +++ b/lib/widgets/drawer/app_drawer_widget.dart @@ -1,4 +1,5 @@ import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; +import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart'; import 'package:diplomaticquarterapp/core/service/client/base_app_client.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; @@ -16,6 +17,7 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../../config/size_config.dart'; +import '../../locator.dart'; import 'drawer_item_widget.dart'; class AppDrawer extends StatefulWidget { @@ -34,6 +36,7 @@ class _AppDrawerState extends State { var sharedPref = new AppSharedPreferences(); var familyFileProvider = FamilyFilesProvider(); AuthenticatedUser user; + AuthenticatedUserObject authenticatedUserObject = locator(); @override Widget build(BuildContext context) { @@ -329,10 +332,7 @@ class _AppDrawerState extends State { } logout() async { - // this.sharedPref.remove(USER_PROFILE); - // this.sharedPref.remove(IMEI_USER_DATA); - // this.sharedPref.remove(TOKEN); - // this.sharedPref.remove(LOGIN_TOKEN_ID); + authenticatedUserObject.logout(); await sharedPref.clear(); this.user = null;