25-2/24/1

This commit is contained in:
Hamza-Ayed
2025-02-24 23:38:42 +03:00
parent 218e174c87
commit 3162b1bec6
56 changed files with 1318 additions and 527 deletions

View File

@@ -1,6 +1,9 @@
import 'dart:io';
import 'package:Tripz/constant/char_map.dart';
import 'package:Tripz/controller/functions/crud.dart';
import 'package:Tripz/controller/functions/encrypt_decrypt.dart';
import 'package:Tripz/env/env.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
@@ -12,11 +15,13 @@ import 'package:Tripz/constant/colors.dart';
import 'package:Tripz/constant/style.dart';
import 'package:Tripz/main.dart';
import 'package:Tripz/views/widgets/my_scafold.dart';
import 'package:secure_string_operations/secure_string_operations.dart';
import '../../constant/info.dart';
import '../../controller/auth/apple_signin_controller.dart';
import '../../controller/auth/google_sign.dart';
import '../../controller/auth/login_controller.dart';
import '../../print.dart';
import '../home/HomePage/contact_us.dart';
import '../home/profile/passenger_profile_page.dart';
@@ -29,6 +34,7 @@ class LoginPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
Get.put(LoginController());
Get.put(CRUD());
return GetBuilder<LoginController>(
builder: (controller) => MyScafolld(
title: 'Login'.tr,
@@ -88,8 +94,10 @@ class LoginPage extends StatelessWidget {
User? user = await authController.signInWithApple();
if (user != null) {
box.write(BoxName.passengerID, user.uid);
box.write(BoxName.email,
encryptionHelper.encryptData(user.email.toString()));
box.write(
BoxName.email,
EncryptionHelper.instance
.encryptData(user.email.toString()));
await controller.loginUsingCredentials(
box.read(BoxName.passengerID).toString(),
box.read(BoxName.email).toString(),
@@ -113,6 +121,17 @@ class LoginPage extends StatelessWidget {
style: AppStyle.subtitle.copyWith(color: Colors.grey),
),
),
// TextButton(
// onPressed: () async {
// var encrypt = EncryptionHelper.instance.encryptData('');
// Log.print('encrypt: ${encrypt}');
// Log.print(
// 'encrypt: ${EncryptionHelper.instance.decryptData(encrypt)}');
// },
// child: Text(
// "Text Button",
// ),
// ),
],
),
),

View File

@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:get/get.dart';
import '../../constant/box_name.dart';
import '../../constant/colors.dart';
import '../../controller/functions/crud.dart';
import '../../controller/functions/package_info.dart';
import '../../controller/home/map_passenger_controller.dart';
import '../../main.dart';
@@ -31,6 +32,7 @@ class MapPagePassenger extends StatelessWidget {
Widget build(BuildContext context) {
Get.put(MapPassengerController());
Get.put(MyMenuController());
Get.put(CRUD());
WidgetsBinding.instance.addPostFrameCallback((_) {
checkForUpdate(context);
});

View File

@@ -257,7 +257,8 @@ class ApplyOrderWidget extends StatelessWidget {
padding: const EdgeInsets.only(bottom: 8.0),
child: ElevatedButton(
onPressed: () {
FirebaseMessagesController().sendNotificationToDriverMAP(
Get.find<FirebaseMessagesController>()
.sendNotificationToDriverMAP(
'message From passenger',
message.tr,
controller.driverToken.toString(),
@@ -290,7 +291,8 @@ class ApplyOrderWidget extends StatelessWidget {
IconButton(
onPressed: () {
if (controller.messagesFormKey.currentState!.validate()) {
FirebaseMessagesController().sendNotificationToDriverMAP(
Get.find<FirebaseMessagesController>()
.sendNotificationToDriverMAP(
'message From passenger',
controller.messageToDriver.text,
controller.driverToken,

View File

@@ -1,11 +1,30 @@
import 'dart:convert';
import 'dart:io';
import 'package:http/http.dart' as http;
import 'package:Tripz/constant/box_name.dart';
import 'package:Tripz/main.dart';
import 'package:device_info_plus/device_info_plus.dart';
import 'package:flutter/material.dart';
import 'package:flutter_font_icons/flutter_font_icons.dart';
import 'package:get/get.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:jwt_decoder/jwt_decoder.dart';
import 'package:secure_string_operations/secure_string_operations.dart';
import '../../../constant/api_key.dart';
import '../../../constant/char_map.dart';
import '../../../constant/colors.dart';
import '../../../constant/info.dart';
import '../../../constant/links.dart';
import '../../../constant/table_names.dart';
import '../../../controller/functions/crud.dart';
import '../../../controller/functions/encrypt_decrypt.dart';
import '../../../controller/functions/package_info.dart';
import '../../../controller/functions/secure_storage.dart';
import '../../../controller/functions/tts.dart';
import '../../../controller/home/map_passenger_controller.dart';
import '../../../controller/home/vip_waitting_page.dart';
import '../../../env/env.dart';
import '../../../print.dart';
GetBuilder<MapPassengerController> leftMainMenuIcons() {
Get.put(TextToSpeechController());
@@ -54,32 +73,41 @@ GetBuilder<MapPassengerController> leftMainMenuIcons() {
tooltip: 'VIP Waiting Page', // More descriptive tooltip
),
// const SizedBox(width: 8),
// _buildIconButtonWithAnimation(
// controller: controller,
// icon: Octicons.screen_full,
// onPressed: () async {
// final plainText = 'Hello, Safar App!';
// debugPrint('Plain Text: $plainText');
// // Encrypt the data
// final encryptedData = encryptionHelper.encryptData(plainText);
// debugPrint('Encrypted: $encryptedData');
// // Decrypt the data
// final decryptedData = encryptionHelper
// .decryptData(encryptedData); // Use the encryptedData variable
// debugPrint('Decrypted: $decryptedData');
// //kVb4a+11Scs9jQWwzeVfx0PxSDiPWDCuMI/RWYxafMU=
// //kVb4a+11Scs9jQWwzeVfx0PxSDiPWDCuMI/RWYxafMU=
// },
// tooltip: 'Recent Locations', // More descriptive tooltip
// ),
_buildIconButtonWithAnimation(
controller: controller,
icon: Octicons.screen_full,
onPressed: () async {
Get.to(() => TestPage());
},
tooltip: 'Recent Locations', // More descriptive tooltip
),
],
),
),
);
}
class TestPage extends StatelessWidget {
const TestPage({
super.key,
});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: Center(
child: TextButton(
onPressed: () async {},
child: Text(
"Text Button",
),
),
),
);
}
}
Widget _buildIconButtonWithAnimation({
required MapPassengerController controller,
required IconData icon,

View File

@@ -459,7 +459,7 @@ class MainBottomMenuMap extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'${'Where to'.tr} ${encryptionHelper.decryptData(box.read(BoxName.name).toString().split(' ')[0])} ',
'${'Where to'.tr} ${EncryptionHelper.instance.decryptData(box.read(BoxName.name).toString().split(' ')[0])} ',
style: AppStyle.subtitle),
// if (controller.noCarString)
// Text('Nearest Car: ~'.tr,

View File

@@ -72,7 +72,7 @@ class NewMainBottomSheet extends StatelessWidget {
children: [
const Icon(Icons.search),
Text(
"${"Where you want go ".tr}${encryptionHelper.decryptData(box.read(BoxName.name).toString().split(' ')[0]).toString()} ?",
"${"Where you want go ".tr}${EncryptionHelper.instance.decryptData(box.read(BoxName.name).toString().split(' ')[0]).toString()} ?",
),
],
),

View File

@@ -222,7 +222,7 @@ class CardTripzWallet extends StatelessWidget {
Align(
alignment: Alignment.bottomRight,
child: Text(
encryptionHelper
EncryptionHelper.instance
.decryptData(
box.read(BoxName.name).toString().split(' ')[0])
.toString(),

View File

@@ -54,7 +54,7 @@ class PassengerProfilePage extends StatelessWidget {
),
trailing: const Icon(Icons.arrow_forward_ios),
subtitle: Text(
'${encryptionHelper.decryptData(controller.prfoileData['first_name'])} ${encryptionHelper.decryptData(controller.prfoileData['last_name'])}'),
'${EncryptionHelper.instance.decryptData(controller.prfoileData['first_name'])} ${EncryptionHelper.instance.decryptData(controller.prfoileData['last_name'])}'),
onTap: () {
controller.updatField(
'first_name', TextInputType.name);
@@ -70,8 +70,9 @@ class PassengerProfilePage extends StatelessWidget {
width: 35,
),
trailing: const Icon(Icons.arrow_forward_ios),
subtitle: Text(encryptionHelper.decryptData(
controller.prfoileData['gender'].toString())),
subtitle: Text(EncryptionHelper.instance
.decryptData(controller.prfoileData['gender']
.toString())),
onTap: () {
Get.defaultDialog(
title: 'Update Gender'.tr,
@@ -84,8 +85,9 @@ class PassengerProfilePage extends StatelessWidget {
controller.updateColumn({
'id': controller.prfoileData['id']
.toString(),
'gender':
encryptionHelper.encryptData(
'gender': EncryptionHelper
.instance
.encryptData(
controller.gender),
});
Get.back();
@@ -181,7 +183,7 @@ class PassengerProfilePage extends StatelessWidget {
size: 35,
),
trailing: const Icon(Icons.arrow_forward_ios),
subtitle: Text(encryptionHelper
subtitle: Text(EncryptionHelper.instance
.decryptData(
controller.prfoileData['sosPhone'])
.toString()),