Update: 2026-07-02 05:27:04
This commit is contained in:
@@ -199,7 +199,8 @@ class LoginController extends GetxController {
|
||||
final Map<String, dynamic> payload = jsonDecode(decodedPayload);
|
||||
|
||||
if (payload['token_type'] == 'registration') {
|
||||
Log.print("isTokenValid: Token is a registration token, treating as invalid for session.");
|
||||
Log.print(
|
||||
"isTokenValid: Token is a registration token, treating as invalid for session.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -288,13 +289,14 @@ class LoginController extends GetxController {
|
||||
);
|
||||
|
||||
if (res == 'token_expired' || res == 'failure' || res == 'error') {
|
||||
Log.print('loginUsingCredentials: $res. Redirecting to PhoneNumberScreen to re-verify.');
|
||||
Log.print(
|
||||
'loginUsingCredentials: $res. Redirecting to PhoneNumberScreen to re-verify.');
|
||||
box.erase();
|
||||
storage.deleteAll();
|
||||
Get.offAll(() => PhoneNumberScreen());
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
// 2) فك JSON مرة واحدة والتحقق من النجاح
|
||||
final decoded = res is String ? jsonDecode(res) : res;
|
||||
if (decoded is! Map || decoded.isEmpty) return;
|
||||
@@ -355,7 +357,8 @@ class LoginController extends GetxController {
|
||||
final localFP = (await DeviceHelper.getDeviceFingerprint()).toString();
|
||||
await storage.write(key: BoxName.fingerPrint, value: localFP);
|
||||
await box.write(BoxName.firstTimeLoadKey, 'false');
|
||||
await getJWT(force: true); // Fetch access token after clearing firstTimeLoadKey
|
||||
await getJWT(
|
||||
force: true); // Fetch access token after clearing firstTimeLoadKey
|
||||
|
||||
// ── 5. المقارنة: FCM token + fingerprint ──────────────────────
|
||||
if (email != '962798583052@intaleqapp.com') {
|
||||
@@ -364,7 +367,8 @@ class LoginController extends GetxController {
|
||||
tokenResp != 'failure' &&
|
||||
tokenResp != 'error' &&
|
||||
tokenResp != 'token_expired') {
|
||||
final tokenJson = tokenResp is String ? jsonDecode(tokenResp) : tokenResp;
|
||||
final tokenJson =
|
||||
tokenResp is String ? jsonDecode(tokenResp) : tokenResp;
|
||||
final serverData = tokenJson['data'] ?? tokenJson['message'];
|
||||
if (serverData is Map) {
|
||||
serverFCM = serverData['token']?.toString() ?? '';
|
||||
@@ -484,6 +488,7 @@ class LoginController extends GetxController {
|
||||
|
||||
if (response.statusCode == 200 || response.statusCode == 201) {
|
||||
var jsonDecoeded = jsonDecode(response.body);
|
||||
Log.print("Tester Login Response: $jsonDecoeded");
|
||||
if (jsonDecoeded['status'] == 'success' &&
|
||||
jsonDecoeded['data'][0]['verified'].toString() == '1') {
|
||||
var d = jsonDecoeded['data'][0];
|
||||
@@ -507,11 +512,15 @@ class LoginController extends GetxController {
|
||||
sendPassengerLocation();
|
||||
Get.offAll(() => const MapPagePassenger());
|
||||
} else {
|
||||
Log.print(
|
||||
"Tester Login Failed due to condition mismatch: status=${jsonDecoeded['status']}, verified=${jsonDecoeded['data']?[0]?['verified']}");
|
||||
Get.offAll(() => LoginPage());
|
||||
isloading = false;
|
||||
update();
|
||||
}
|
||||
} else {
|
||||
Log.print(
|
||||
"Tester Login Failed with status code: ${response.statusCode}, body: ${response.body}");
|
||||
isloading = false;
|
||||
update();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user