Fixes & Updates - 2026-06-01: Integrate Back-End v3 updates, fix call/connection issues across apps

This commit is contained in:
Hamza-Ayed
2026-06-01 23:36:27 +03:00
parent 118781fd66
commit 97945aa362
76 changed files with 19806 additions and 10822 deletions

View File

@@ -12,7 +12,8 @@ import '../../../constant/style.dart';
import '../../../controller/functions/audio_record1.dart';
import '../../../controller/functions/launch.dart';
import '../../../controller/functions/toast.dart';
import '../../../controller/home/map_passenger_controller.dart';
import '../../../controller/home/map/ride_lifecycle_controller.dart';
import '../../../controller/home/map/ui_interactions_controller.dart';
class VipRideBeginPassenger extends StatelessWidget {
const VipRideBeginPassenger({
@@ -24,8 +25,8 @@ class VipRideBeginPassenger extends StatelessWidget {
ProfileController profileController = Get.put(ProfileController());
AudioRecorderController audioController =
Get.put(AudioRecorderController());
// Get.put(MapPassengerController());
return GetBuilder<MapPassengerController>(builder: (controller) {
final uiController = Get.find<UiInteractionsController>();
return GetBuilder<RideLifecycleController>(builder: (controller) {
if (controller.statusRideVip == 'Begin' ||
!controller.statusRideFromStart) {
return Positioned(
@@ -148,9 +149,11 @@ class VipRideBeginPassenger extends StatelessWidget {
child: audioController.isRecording == false
? IconButton(
onPressed: () async {
await audioController.startRecording();
Toast.show(context, 'Start Record'.tr,
AppColor.greenColor);
await audioController.startRecording(rideId: controller.rideId);
if (context.mounted) {
Toast.show(context, 'Start Record'.tr,
AppColor.greenColor);
}
},
icon: const Icon(
Icons.play_circle_fill_outlined,
@@ -162,8 +165,10 @@ class VipRideBeginPassenger extends StatelessWidget {
: IconButton(
onPressed: () async {
await audioController.stopRecording();
Toast.show(context, 'Record saved'.tr,
AppColor.greenColor);
if (context.mounted) {
Toast.show(context, 'Record saved'.tr,
AppColor.greenColor);
}
},
icon: const Icon(
Icons.stop_circle,
@@ -215,15 +220,11 @@ class VipRideBeginPassenger extends StatelessWidget {
profileController.prfoileData['sosPhone']);
}
} else {
String phoneNumber = box
.read(BoxName.sosPhonePassenger)
.toString();
// phoneNumber = phoneNumber.replaceAll('0', '');
var phone = box.read(BoxName.countryCode) ==
'Egypt'
? '+2${box.read(BoxName.sosPhonePassenger)}'
: '+962${box.read(BoxName.sosPhonePassenger)}';
controller.sendWhatsapp(phone);
uiController.sendWhatsapp(phone);
}
},
icon: const Icon(
@@ -237,7 +238,7 @@ class VipRideBeginPassenger extends StatelessWidget {
width: Get.width * .15,
child: IconButton(
onPressed: () async {
await controller.shareTripWithFamily();
await uiController.shareTripWithFamily();
},
icon: const Icon(
AntDesign.Safety,
@@ -283,13 +284,12 @@ class VipRideBeginPassenger extends StatelessWidget {
}
class StreamCounter extends StatelessWidget {
const StreamCounter({Key? key}) : super(key: key);
const StreamCounter({super.key});
@override
// Build the UI based on the timer value
Widget build(BuildContext context) {
Get.put(MapPassengerController());
return GetBuilder<MapPassengerController>(builder: (controller) {
return GetBuilder<RideLifecycleController>(builder: (controller) {
return StreamBuilder<int>(
initialData: 0,
stream: controller.timerController.stream,