Files
intaleq/intaleq_rider_diff.patch
T
2026-08-01 04:47:15 +03:00

64 lines
2.9 KiB
Diff

diff --git a/intaleq_rider/lib/controller/auth/otp_controller.dart b/intaleq_rider/lib/controller/auth/otp_controller.dart
index 03da3ca..da684c2 100644
--- a/intaleq_rider/lib/controller/auth/otp_controller.dart
+++ b/intaleq_rider/lib/controller/auth/otp_controller.dart
@@ -97,6 +97,15 @@ class PhoneAuthHelper {
// ✅ المستخدم موجود مسبقاً -> تسجيل دخول مباشر
await _handleSuccessfulLogin(data['message']['passenger']);
} else {
+ // ✅ Save the new JWT token for registration before navigating
+ final jwtToken = data['message']?['jwt'] ??
+ data['message']?['token'] ??
+ data['message']?['access_token'];
+ if (jwtToken != null && jwtToken.toString().isNotEmpty) {
+ box.write(BoxName.jwt, c(jwtToken.toString()));
+ await storage.write(
+ key: BoxName.jwt, value: c(jwtToken.toString()));
+ }
// ✅ مستخدم جديد -> الذهاب لصفحة التسجيل
mySnackbarSuccess(
'Phone verified. Please complete registration.'.tr);
@@ -144,13 +153,16 @@ class PhoneAuthHelper {
},
);
final data = (response);
- if (data != 'failure') {
- // Registration successful, log user in
-
- await _handleSuccessfulLogin(data['message']['data']);
+ if (data != 'failure' && data is Map) {
+ if (data['status'] == 'success') {
+ // Registration successful, log user in
+ await _handleSuccessfulLogin(data['message']['data']);
+ } else {
+ mySnackbarError(
+ data['message']?.toString() ?? "Registration failed.".tr);
+ }
} else {
- mySnackbarError(
- "User with this phone number or email already exists.".tr);
+ mySnackbarError("Server error or user already exists.".tr);
}
} catch (e) {
Log.print('e: ${e}');
diff --git a/intaleq_rider/lib/controller/payment/payment_controller.dart b/intaleq_rider/lib/controller/payment/payment_controller.dart
index 7a2208e..1eeb41f 100644
--- a/intaleq_rider/lib/controller/payment/payment_controller.dart
+++ b/intaleq_rider/lib/controller/payment/payment_controller.dart
@@ -53,8 +53,13 @@ class PaymentController extends GetxController {
await CRUD().getWallet(
link: AppLink.getWalletByPassenger,
payload: {'passenger_id': box.read(BoxName.passengerID)}).then((value) {
- box.write(BoxName.passengerWalletTotal,
- value['message'][0]['total'].toString());
+ final msg = value['message'];
+ if (msg is List && msg.isNotEmpty) {
+ box.write(BoxName.passengerWalletTotal,
+ (msg[0]['total'] ?? '0').toString());
+ } else {
+ box.write(BoxName.passengerWalletTotal, '0');
+ }
});
isLoading = false;
update();