saving language on changing account or guest mode

This commit is contained in:
MhdZiadHirati 2023-10-26 12:31:52 +03:00
parent 23fb9b62d2
commit 147e415b39
5 changed files with 63 additions and 29 deletions

View File

@ -33,7 +33,7 @@ class AccountScreen extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
accountController.getSelectedLanguageIcon(); accountController.getSelectedLanguageIcon();
// homeController.readUser(); homeController.readUser();
return Scaffold( return Scaffold(
backgroundColor: AppColors.backGroundColor, backgroundColor: AppColors.backGroundColor,
body: SingleChildScrollView( body: SingleChildScrollView(
@ -109,7 +109,12 @@ class AccountScreen extends StatelessWidget {
], ],
).onTap(() { ).onTap(() {
RoutingManager.offAll(RouteName.login); RoutingManager.offAll(RouteName.login);
String? languangeCode =
homeController.storage.getLanguage();
homeController.storage.clearCache(); homeController.storage.clearCache();
if (languangeCode != null) {
homeController.storage.saveLanguage(languangeCode);
}
homeController.storage.savefirstTimeOpened(); homeController.storage.savefirstTimeOpened();
}); });
}), }),
@ -236,36 +241,39 @@ class AccountScreen extends StatelessWidget {
width: 20, width: 20,
), ),
if (Responsive.isTablet()) Container().expanded(7), if (Responsive.isTablet()) Container().expanded(7),
DropdownButton( Obx(() {
value: accountController.selectedLanguageSvg.value, return DropdownButton(
items: [ value: accountController.selectedLanguageSvg.value,
DropdownMenuItem( items: [
value: 'english', DropdownMenuItem(
child: SizedBox( value: 'english',
width: 50, child: SizedBox(
height: 23, width: 50,
child: BoldTextWidget('english'.tr), height: 23,
child: BoldTextWidget('english'.tr),
),
), ),
), DropdownMenuItem(
DropdownMenuItem( value: 'arabic',
value: 'arabic', child: SizedBox(
child: SizedBox( width: 50,
width: 50, height: 23,
height: 23, child: BoldTextWidget('arabic'.tr),
child: BoldTextWidget('arabic'.tr), ),
), ),
), ],
], onChanged: (value) {
onChanged: (value) { if (value == 'english') {
if (value == 'english') { accountController.changeLanguage(Languages.english);
accountController.changeLanguage(Languages.english); homeController
homeController.setUiLanguage(Languages.english.code); .setUiLanguage(Languages.english.code);
} }
if (value == 'arabic') { if (value == 'arabic') {
accountController.changeLanguage(Languages.arabic); accountController.changeLanguage(Languages.arabic);
homeController.setUiLanguage(Languages.arabic.code); homeController.setUiLanguage(Languages.arabic.code);
} }
}) });
})
], ],
).paddingSymmetric(horizontal: 15), ).paddingSymmetric(horizontal: 15),
).paddingSymmetric( ).paddingSymmetric(

View File

@ -105,7 +105,11 @@ class AuthController extends GetxController {
onSuccess: (value) async { onSuccess: (value) async {
isGuest = false.obs; isGuest = false.obs;
storage.saveIsGuest(false); storage.saveIsGuest(false);
String? languangeCode = storage.getLanguage();
await storage.clearCache(); await storage.clearCache();
if (languangeCode != null) {
storage.saveLanguage(languangeCode);
}
onSuccess?.call(value); onSuccess?.call(value);
}, },
); );
@ -200,7 +204,11 @@ class AuthController extends GetxController {
onSuccess: (value) { onSuccess: (value) {
isGuest = true.obs; isGuest = true.obs;
onSuccess?.call(value); onSuccess?.call(value);
String? languangeCode = storage.getLanguage();
storage.clearCache(); storage.clearCache();
if (languangeCode != null) {
storage.saveLanguage(languangeCode);
}
}, },
onError: (error) { onError: (error) {
onError?.call(error); onError?.call(error);

View File

@ -37,7 +37,11 @@ class HomeController extends GetxController {
ButtonWidget( ButtonWidget(
onTap: () { onTap: () {
RoutingManager.offAll(RouteName.login); RoutingManager.offAll(RouteName.login);
String? languangeCode = storage.getLanguage();
storage.clearCache(); storage.clearCache();
if (languangeCode != null) {
storage.saveLanguage(languangeCode);
}
storage.savefirstTimeOpened(); storage.savefirstTimeOpened();
}, },
title: 'sign_in'.tr) title: 'sign_in'.tr)

View File

@ -69,7 +69,11 @@ class SuperHome extends StatelessWidget {
val = false; val = false;
}); });
LocalStorage().saveIsGuest(false); LocalStorage().saveIsGuest(false);
String? languangeCode = LocalStorage().getLanguage();
LocalStorage().clearCache(); LocalStorage().clearCache();
if (languangeCode != null) {
LocalStorage().saveLanguage(languangeCode);
}
homeController.storage.savefirstTimeOpened(); homeController.storage.savefirstTimeOpened();
homeController.selectIndex.value = 0; homeController.selectIndex.value = 0;
chatController.io.disconnect(); chatController.io.disconnect();

View File

@ -39,7 +39,11 @@ class SplashScreen extends StatelessWidget {
val = false; val = false;
}); });
localStorage.saveIsGuest(false); localStorage.saveIsGuest(false);
String? languangeCode = localStorage.getLanguage();
await localStorage.clearCache(); await localStorage.clearCache();
if (languangeCode != null) {
localStorage.saveLanguage(languangeCode);
}
homeController.storage.savefirstTimeOpened(); homeController.storage.savefirstTimeOpened();
RoutingManager.offAll(RouteName.login); RoutingManager.offAll(RouteName.login);
homeController.selectIndex.value = 0; homeController.selectIndex.value = 0;
@ -108,7 +112,13 @@ class SplashScreen extends StatelessWidget {
val = false; val = false;
}); });
localStorage.saveIsGuest(false); localStorage.saveIsGuest(false);
String? languangeCode =
localStorage.getLanguage();
await localStorage.clearCache(); await localStorage.clearCache();
if (languangeCode != null) {
localStorage
.saveLanguage(languangeCode);
}
homeController.storage homeController.storage
.savefirstTimeOpened(); .savefirstTimeOpened();
RoutingManager.offAll( RoutingManager.offAll(