|
@@ -6,6 +6,7 @@ import 'package:easy_localization/easy_localization.dart';
|
|
|
import 'package:flutter/foundation.dart';
|
|
|
import 'package:flutter/material.dart';
|
|
|
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
|
|
|
+import 'package:jwt_decoder/jwt_decoder.dart';
|
|
|
import 'package:telnow_mobile_new/src/api/api_auth_provider.dart';
|
|
|
import 'package:telnow_mobile_new/src/api/api_auth_repository.dart';
|
|
|
import 'package:telnow_mobile_new/src/api/jwt_token.dart';
|
|
@@ -246,6 +247,10 @@ class _LoginPageState extends State<LoginPage> {
|
|
|
await sharedPreferencesManager.putString(SharedPreferencesManager.keyAccessToken, token.accessToken!);
|
|
|
await sharedPreferencesManager.putString(SharedPreferencesManager.keyRefreshToken, token.refreshToken!);
|
|
|
|
|
|
+ // print(JwtDecoder.decode(token.accessToken!));
|
|
|
+ var accTkn = JwtDecoder.decode(token.accessToken!);
|
|
|
+ switchLang(context, context.locale.toLanguageTag(), accTkn);
|
|
|
+
|
|
|
if(await setUsername()){
|
|
|
var data = {
|
|
|
'username': username.trim(),
|
|
@@ -273,6 +278,18 @@ class _LoginPageState extends State<LoginPage> {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ switchLang(BuildContext context, code, tkn) async {
|
|
|
+ // print("switchLang called");
|
|
|
+ try{
|
|
|
+ var res = await apiAuthProvider.patchData('/api/informants/' + tkn['userId'].toString(), {'userId': tkn['user_name'].toString().replaceFirst('inf-', ""), 'language': code.toUpperCase()}, context);
|
|
|
+ if (res != null) {
|
|
|
+ // print("res $res");
|
|
|
+ // context.setLocale(Locale(code));
|
|
|
+ }
|
|
|
+ }catch(e){}
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
setUsername() async {
|
|
|
try{
|
|
|
String? accessToken = sharedPreferencesManager.getString(SharedPreferencesManager.keyAccessToken);
|