|
|
|
|
@@ -543,12 +543,12 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
|
|
|
|
|
void sendSMS(String to) async {
|
|
|
|
|
// Get the driver's phone number.
|
|
|
|
|
String driverPhone = encryptionHelper.decryptData(
|
|
|
|
|
String driverPhone = EncryptionHelper.instance.decryptData(
|
|
|
|
|
dataCarsLocationByPassenger['message'][carsOrder]['phone'].toString());
|
|
|
|
|
|
|
|
|
|
// Format the message.
|
|
|
|
|
String message =
|
|
|
|
|
'Hi! This is ${encryptionHelper.decryptData(box.read(BoxName.name).toString().split(' ')[0]).toString()}.\n I am using ${box.read(AppInformation.appName)} to ride with $passengerName as the driver. $passengerName \nis driving a $model\n with license plate $licensePlate.\n I am currently located at $passengerLocation.\n If you need to reach me, please contact the driver directly at\n\n $driverPhone.';
|
|
|
|
|
'Hi! This is ${EncryptionHelper.instance.decryptData(box.read(BoxName.name).toString().split(' ')[0]).toString()}.\n I am using ${box.read(AppInformation.appName)} to ride with $passengerName as the driver. $passengerName \nis driving a $model\n with license plate $licensePlate.\n I am currently located at $passengerLocation.\n If you need to reach me, please contact the driver directly at\n\n $driverPhone.';
|
|
|
|
|
|
|
|
|
|
// Launch the URL to send the SMS.
|
|
|
|
|
launchCommunication('sms', to, message);
|
|
|
|
|
@@ -560,7 +560,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
|
|
|
|
|
// Format the message.
|
|
|
|
|
String message =
|
|
|
|
|
'${'${'Hi! This is'.tr} ${encryptionHelper.decryptData(box.read(BoxName.name).toString().split(' ')[0]).toString()}.\n${' I am using'.tr}'} ${AppInformation.appName}${' to ride with'.tr} $passengerName${' as the driver.'.tr} $passengerName \n${'is driving a '.tr}$model\n${' with license plate '.tr}$licensePlate.\n${' I am currently located at '.tr} https://www.google.com/maps/place/${passengerLocation.latitude},${passengerLocation.longitude}.\n${' If you need to reach me, please contact the driver directly at'.tr}\n\n $driverPhone.';
|
|
|
|
|
'${'${'Hi! This is'.tr} ${EncryptionHelper.instance.decryptData(box.read(BoxName.name).toString().split(' ')[0]).toString()}.\n${' I am using'.tr}'} ${AppInformation.appName}${' to ride with'.tr} $passengerName${' as the driver.'.tr} $passengerName \n${'is driving a '.tr}$model\n${' with license plate '.tr}$licensePlate.\n${' I am currently located at '.tr} https://www.google.com/maps/place/${passengerLocation.latitude},${passengerLocation.longitude}.\n${' If you need to reach me, please contact the driver directly at'.tr}\n\n $driverPhone.';
|
|
|
|
|
|
|
|
|
|
// Launch the URL to send the WhatsApp message.
|
|
|
|
|
launchCommunication('whatsapp', to, message);
|
|
|
|
|
@@ -942,7 +942,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
box.write(BoxName.passengerWalletTotal, '0');
|
|
|
|
|
update();
|
|
|
|
|
if (box.read(BoxName.parentTripSelected) == true) {
|
|
|
|
|
FirebaseMessagesController().sendNotificationToPassengerToken(
|
|
|
|
|
Get.find<FirebaseMessagesController>().sendNotificationToPassengerToken(
|
|
|
|
|
"Finish Monitor".tr,
|
|
|
|
|
"Finish Monitor".tr,
|
|
|
|
|
box.read(BoxName.tokenParent),
|
|
|
|
|
@@ -1530,7 +1530,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
// passengerRate.toStringAsFixed(2),
|
|
|
|
|
// ];
|
|
|
|
|
// Log.print('body: ${body}');
|
|
|
|
|
// FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
// Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
// 'OrderSpeed',
|
|
|
|
|
// rideId,
|
|
|
|
|
// driverData['token'].toString(),
|
|
|
|
|
@@ -1673,7 +1673,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
// ];
|
|
|
|
|
// // Log.print('body: ${body}');
|
|
|
|
|
|
|
|
|
|
// FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
// Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
// 'OrderSpeed',
|
|
|
|
|
// rideId.toString(),
|
|
|
|
|
// dataCarsLocationByPassenger['message'][i]['token'].toString(),
|
|
|
|
|
@@ -1956,10 +1956,11 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
Future.delayed(const Duration(microseconds: 10));
|
|
|
|
|
final body = constructNotificationBody(driverData);
|
|
|
|
|
// Log.print('body:ww ${body}');
|
|
|
|
|
FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
'Order'.tr,
|
|
|
|
|
endNameAddress,
|
|
|
|
|
encryptionHelper.decryptData(driverData['token'].toString()),
|
|
|
|
|
EncryptionHelper.instance
|
|
|
|
|
.decryptData(driverData['token'].toString()),
|
|
|
|
|
body,
|
|
|
|
|
'order.wav');
|
|
|
|
|
}
|
|
|
|
|
@@ -1980,15 +1981,16 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
distance.toStringAsFixed(2),
|
|
|
|
|
driverData['driver_id'].toString(),
|
|
|
|
|
box.read(BoxName.passengerID).toString(),
|
|
|
|
|
encryptionHelper
|
|
|
|
|
EncryptionHelper.instance
|
|
|
|
|
.decryptData(box.read(BoxName.name).toString().split(' ')[0])
|
|
|
|
|
.toString(),
|
|
|
|
|
encryptionHelper.decryptData(box.read(BoxName.tokenFCM).toString()),
|
|
|
|
|
encryptionHelper.decryptData(box.read(BoxName.phone).toString()),
|
|
|
|
|
EncryptionHelper.instance
|
|
|
|
|
.decryptData(box.read(BoxName.tokenFCM).toString()),
|
|
|
|
|
EncryptionHelper.instance.decryptData(box.read(BoxName.phone).toString()),
|
|
|
|
|
durationToPassenger.toStringAsFixed(0) ?? '120',
|
|
|
|
|
distanceByPassenger.toString() ?? '2000',
|
|
|
|
|
paymentController.isWalletChecked.toString(),
|
|
|
|
|
encryptionHelper.decryptData(driverData['token'].toString()),
|
|
|
|
|
EncryptionHelper.instance.decryptData(driverData['token'].toString()),
|
|
|
|
|
durationToPassenger.toString(),
|
|
|
|
|
rideId.toString(),
|
|
|
|
|
rideTimerBegin.toString(),
|
|
|
|
|
@@ -2186,26 +2188,28 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
var response = jsonDecode(res);
|
|
|
|
|
Log.print('getUpdatedRideForDriverApply: $response');
|
|
|
|
|
driverId = response['data']['driver_id'];
|
|
|
|
|
driverPhone = encryptionHelper.decryptData(response['data']['phone']);
|
|
|
|
|
driverPhone =
|
|
|
|
|
EncryptionHelper.instance.decryptData(response['data']['phone']);
|
|
|
|
|
driverCarMake = response['data']['make'];
|
|
|
|
|
model = response['data']['model'];
|
|
|
|
|
colorHex = response['data']['color_hex'];
|
|
|
|
|
carColor = response['data']['color'];
|
|
|
|
|
make = response['data']['make'];
|
|
|
|
|
licensePlate =
|
|
|
|
|
encryptionHelper.decryptData(response['data']['car_plate']);
|
|
|
|
|
passengerName =
|
|
|
|
|
encryptionHelper.decryptData(response['data']['passengerName']);
|
|
|
|
|
driverName = encryptionHelper
|
|
|
|
|
EncryptionHelper.instance.decryptData(response['data']['car_plate']);
|
|
|
|
|
passengerName = EncryptionHelper.instance
|
|
|
|
|
.decryptData(response['data']['passengerName']);
|
|
|
|
|
driverName = EncryptionHelper.instance
|
|
|
|
|
.decryptData(response['data']['driverName'].toString());
|
|
|
|
|
driverToken = encryptionHelper.decryptData(response['data']['token']);
|
|
|
|
|
driverToken =
|
|
|
|
|
EncryptionHelper.instance.decryptData(response['data']['token']);
|
|
|
|
|
// Log.print('driverToken updated: $driverToken');
|
|
|
|
|
carYear = response['data']['year'];
|
|
|
|
|
driverRate = response['data']['ratingDriver'].toString();
|
|
|
|
|
}
|
|
|
|
|
// driversToken.remove(driverToken);
|
|
|
|
|
// for (var i = 1; i < driversToken.length; i++) {
|
|
|
|
|
FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
'Order Accepted'.tr,
|
|
|
|
|
'$driverName${'Accepted your order'.tr}',
|
|
|
|
|
driverToken.toString(),
|
|
|
|
|
@@ -2452,9 +2456,9 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
longitude >= minLongitude &&
|
|
|
|
|
longitude <= maxLongitude) {
|
|
|
|
|
box.write(BoxName.serverChosen,
|
|
|
|
|
encryptionHelper.decryptData(locationData['server_link']));
|
|
|
|
|
EncryptionHelper.instance.decryptData(locationData['server_link']));
|
|
|
|
|
// Log.print(
|
|
|
|
|
// 'locationData----server_link: ${encryptionHelper.decryptData(locationData['server_link'])}');
|
|
|
|
|
// 'locationData----server_link: ${EncryptionHelper.instance.decryptData(locationData['server_link'])}');
|
|
|
|
|
return locationData['name'];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@@ -2609,7 +2613,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
_getIconForCar(json),
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
driversToken.add(encryptionHelper.decryptData(json['token']));
|
|
|
|
|
driversToken.add(EncryptionHelper.instance.decryptData(json['token']));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Add fake car markers
|
|
|
|
|
@@ -2921,10 +2925,11 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
Get.back();
|
|
|
|
|
}));
|
|
|
|
|
} else if (res1['status'] == 'success') {
|
|
|
|
|
var tokenParent = encryptionHelper.decryptData(res1['data'][0]['token']);
|
|
|
|
|
var tokenParent =
|
|
|
|
|
EncryptionHelper.instance.decryptData(res1['data'][0]['token']);
|
|
|
|
|
Get.snackbar("The invitation was sent successfully".tr, '',
|
|
|
|
|
backgroundColor: AppColor.greenColor);
|
|
|
|
|
FirebaseMessagesController().sendNotificationToPassengerToken(
|
|
|
|
|
Get.find<FirebaseMessagesController>().sendNotificationToPassengerToken(
|
|
|
|
|
"Trip Monitoring".tr,
|
|
|
|
|
"Trip Monitoring".tr,
|
|
|
|
|
tokenParent,
|
|
|
|
|
@@ -3161,7 +3166,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
changeCancelRidePageShow();
|
|
|
|
|
if (rideId != 'yet') {
|
|
|
|
|
Log.print('cancelRide: 1');
|
|
|
|
|
await FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
await Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
'Cancel Trip'.tr,
|
|
|
|
|
'Trip Cancelled'.tr,
|
|
|
|
|
driverToken.toString(),
|
|
|
|
|
@@ -5163,34 +5168,38 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
timeSelected);
|
|
|
|
|
// Optionally, set up local notification or send a push notification
|
|
|
|
|
|
|
|
|
|
await FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
'OrderVIP',
|
|
|
|
|
rideId.toString(),
|
|
|
|
|
encryptionHelper.decryptData(driver['token'].toString()),
|
|
|
|
|
[
|
|
|
|
|
id,
|
|
|
|
|
rideId,
|
|
|
|
|
driver['id'],
|
|
|
|
|
passengerLocation.latitude.toString(),
|
|
|
|
|
startNameAddress.toString(),
|
|
|
|
|
passengerLocation.longitude.toString(),
|
|
|
|
|
encryptionHelper
|
|
|
|
|
.decryptData(box.read(BoxName.name).toString().split(' ')[0])
|
|
|
|
|
.toString(),
|
|
|
|
|
box.read(BoxName.passengerID).toString(),
|
|
|
|
|
box.read(BoxName.phone).toString(),
|
|
|
|
|
box.read(BoxName.email).toString(),
|
|
|
|
|
box.read(BoxName.passengerPhotoUrl).toString(),
|
|
|
|
|
box.read(BoxName.tokenFCM).toString(),
|
|
|
|
|
encryptionHelper.decryptData(driver['token'].toString()),
|
|
|
|
|
],
|
|
|
|
|
'order.wav');
|
|
|
|
|
await Get.find<FirebaseMessagesController>()
|
|
|
|
|
.sendNotificationToDriverMAP(
|
|
|
|
|
'OrderVIP',
|
|
|
|
|
rideId.toString(),
|
|
|
|
|
EncryptionHelper.instance
|
|
|
|
|
.decryptData(driver['token'].toString()),
|
|
|
|
|
[
|
|
|
|
|
id,
|
|
|
|
|
rideId,
|
|
|
|
|
driver['id'],
|
|
|
|
|
passengerLocation.latitude.toString(),
|
|
|
|
|
startNameAddress.toString(),
|
|
|
|
|
passengerLocation.longitude.toString(),
|
|
|
|
|
EncryptionHelper.instance
|
|
|
|
|
.decryptData(
|
|
|
|
|
box.read(BoxName.name).toString().split(' ')[0])
|
|
|
|
|
.toString(),
|
|
|
|
|
box.read(BoxName.passengerID).toString(),
|
|
|
|
|
box.read(BoxName.phone).toString(),
|
|
|
|
|
box.read(BoxName.email).toString(),
|
|
|
|
|
box.read(BoxName.passengerPhotoUrl).toString(),
|
|
|
|
|
box.read(BoxName.tokenFCM).toString(),
|
|
|
|
|
EncryptionHelper.instance
|
|
|
|
|
.decryptData(driver['token'].toString()),
|
|
|
|
|
],
|
|
|
|
|
'order.wav');
|
|
|
|
|
if (response['message'] == "Trip updated successfully") {
|
|
|
|
|
mySnackbarSuccess("Trip updated successfully".tr);
|
|
|
|
|
Log.print(
|
|
|
|
|
'previous_driver_token: ${response['previous_driver_token']}');
|
|
|
|
|
|
|
|
|
|
FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
'Order VIP Canceld'.tr,
|
|
|
|
|
'Passenger cancel order'.tr,
|
|
|
|
|
response['previous_driver_token'].toString(),
|
|
|
|
|
@@ -5214,7 +5223,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
cancelVip(String token, tripId) async {
|
|
|
|
|
// FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
// Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
// 'Order VIP Canceld'.tr,
|
|
|
|
|
// 'Passenger cancel order'.tr,
|
|
|
|
|
// token,
|
|
|
|
|
@@ -5230,7 +5239,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sendToDriverAgain(String token) {
|
|
|
|
|
FirebaseMessagesController().sendNotificationToDriverMAP(
|
|
|
|
|
Get.find<FirebaseMessagesController>().sendNotificationToDriverMAP(
|
|
|
|
|
'Order VIP Canceld'.tr,
|
|
|
|
|
'Passenger cancel order'.tr,
|
|
|
|
|
token,
|
|
|
|
|
@@ -5377,6 +5386,7 @@ class MapPassengerController extends GetxController {
|
|
|
|
|
reloadStartApp = false;
|
|
|
|
|
startMarkerReloading();
|
|
|
|
|
Get.put(TextToSpeechController());
|
|
|
|
|
Get.put(FirebaseMessagesController());
|
|
|
|
|
box.write(BoxName.carType, 'yet');
|
|
|
|
|
box.write(BoxName.tipPercentage, '0');
|
|
|
|
|
Get.put(AudioRecorderController());
|
|
|
|
|
|