diff --git a/.env b/.env
index b351a6d..03250d0 100755
--- a/.env
+++ b/.env
@@ -14,14 +14,14 @@ chatGPTkeySeferNew=zg-Z4AJcAROgNXjgrEIU8fKC9XrxgUE4Qtrrlq1yiux0jL3dITSXrXlBl
secretKey=zg_ropj_57Iiv6MFCBFq3C2n6IXlmjykpxDmW93SW3vvXh68UA9T5FORTWgWsT37StKsOPdwDdsy8qR9srMUluahs3nPHvgBa33tGk90vV5XrXlBl
stripe_publishableKe=vg_ropj_57Iiv6MFCBFq3C2n6kNJnZByV6nuDtXe9IjEPOfhmpDtWmt3MLR0gQpiHcQmAFMUPrZc3QiCDjxBZLbxDC3efxWxz33bWH1ZgrsXrXlBl
llamaKey=RR-EuyoFDUvfRDBj46fZKAtKJ3voM8Mt768cPeJV7GNdAkPTKdY8Odm9n4ggGqI5GyoXrXlBl
-serverPHP=https://api.sefer.live/sefer
-seferAlexandriaServer=https://seferalexandria.site/sefer
-seferPaymentServer=https://seferpw.shop/sefer
+serverPHP=https://api.tripz-egypt.com/tripz
+seferAlexandriaServer=https://api.tripz-egypt.com/tripz
+seferPaymentServer=https://wl.tripz-egypt.com/tripz
# seferCairoServer=https://sefer.click/sefer
-seferCairoServer=https://server.sefer.click/sefer.click/sefer
-seferGizaServer=https://gizasefer.online/sefer
+seferCairoServer=https://api.tripz-egypt.com/tripz
+seferGizaServer=https://api.tripz-egypt.com/tripz
anthropicAIkeySeferNewHamzaayedpython=zg-qbc-qvo39-vCB-WnzEwFNArO0YlTapvfhtmguKWsXJSKqg_NZSjHBYVXMZK1yUK88SobdckV0KuPaBh0c_WHtGsRO_439PBk-e2QqgkQQXrXlBl
-getapiKey=https://server.sefer.click/sefer.click/sefer/ride/apiKey/get.php
+getapiKey=https://api.tripz-egypt.com/tripz/ride/apiKey/get.php
cohere=Aulwd8y5SPWos0hJhG0toUf8gOhUUrpf5Q2TPmVGXrXlBl
claudeAiAPI=zg-qbc-qvo39-xWOxIGwWTOzCFBnIYSKKhfyz_KVAvrH-6_4ZEJL68G_QBH26oeTOMMoQug9KuOjjKSP_A4S3SUDlbxR9duVzoQ-MkX_UQQQXrXlBl
payPalClientId=QALymfNI5Tzt4s-ysoz6vD4_nqX0SUtkC_qYV-Ugk5gaM_8Z-kg4L53k8Uux_4jEWXDkNpXGSWPpIzDFXrXlBl
@@ -53,6 +53,7 @@ allowed=TripzDriver:
allowedWallet=TripzWallet:
passnpassenger=hbgbitbXrXrBr
newId=new
+newcontabo = Xr9j74uRrr?Gzcvm
a=q
b=x
c=f
diff --git a/.gitignore b/.gitignore
index 399ec11..3f82396 100755
--- a/.gitignore
+++ b/.gitignore
@@ -33,6 +33,7 @@ migrate_working_dir/
.pub-cache/
.pub/
.env
+tripz_server.yaml
/build/
# Symbolication related
diff --git a/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/configure_fingerprint.bin b/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/configure_fingerprint.bin
index 5d9cd47..2e22541 100644
--- a/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/configure_fingerprint.bin
@@ -2,28 +2,28 @@ C/C++ Structured Log
}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2~
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2~
|
-z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/android_gradle_build.json 2
+z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/android_gradle_build.json 2
2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/android_gradle_build_mini.json 2 2p
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/android_gradle_build_mini.json 2 2p
n
-l/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/build.ninja 2 2t
+l/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/build.ninja 2 2t
r
-p/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/build.ninja.txt 2y
+p/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/build.ninja.txt 2y
w
-u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/build_file_index.txt 2
^ 2z
+u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/build_file_index.txt 2
^ 2z
x
-v/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/compile_commands.json 2 2~
+v/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/compile_commands.json 2 2~
|
-z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/compile_commands.json.bin 2 2
+z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/compile_commands.json.bin 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/metadata_generation_command.txt 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/metadata_generation_command.txt 2
2w
u
-s/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/prefab_config.json 2
( 2|
+s/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/prefab_config.json 2
( 2|
z
-x/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/symbol_folder_index.txt 2
o 2b
+x/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/arm64-v8a/symbol_folder_index.txt 2
o 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/configure_fingerprint.bin b/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/configure_fingerprint.bin
index 62af3c8..6324f92 100644
--- a/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Log
/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
~
-|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/android_gradle_build.json 2 2
+|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/android_gradle_build.json 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/android_gradle_build_mini.json 2 2r
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/android_gradle_build_mini.json 2 2r
p
-n/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/build.ninja 2 2v
+n/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/build.ninja 2 2v
t
-r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/build.ninja.txt 2{
+r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/build.ninja.txt 2{
y
-w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/build_file_index.txt 2
^ 2|
+w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/build_file_index.txt 2
^ 2|
z
-x/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/compile_commands.json 2 2
+x/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/compile_commands.json 2 2
~
-|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/compile_commands.json.bin 2 2
+|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/compile_commands.json.bin 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/metadata_generation_command.txt 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/metadata_generation_command.txt 2
2y
w
-u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/prefab_config.json 2
( 2~
+u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/prefab_config.json 2
( 2~
|
-z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/symbol_folder_index.txt 2
q 2b
+z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/armeabi-v7a/symbol_folder_index.txt 2
q 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/Debug/6a58wo5c/x86/configure_fingerprint.bin b/android/app/.cxx/Debug/6a58wo5c/x86/configure_fingerprint.bin
index e10dfb3..3da418b 100644
--- a/android/app/.cxx/Debug/6a58wo5c/x86/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/6a58wo5c/x86/configure_fingerprint.bin
@@ -2,28 +2,28 @@ C/C++ Structured Log{
y
w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 坰2 2x
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ӏ2 2x
v
-t/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/android_gradle_build.json 坰2
+t/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/android_gradle_build.json ӏ2
2}
{
-y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/android_gradle_build_mini.json 坰2 2j
+y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/android_gradle_build_mini.json ӏ2 2j
h
-f/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/build.ninja 坰2 2n
+f/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/build.ninja ӏ2 2n
l
-j/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/build.ninja.txt 坰2s
+j/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/build.ninja.txt ӏ2s
q
-o/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/build_file_index.txt 坰2
^ 2t
+o/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/build_file_index.txt ӏ2
^ 2t
r
-p/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/compile_commands.json 坰2 2x
+p/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/compile_commands.json ӏ2 2x
v
-t/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/compile_commands.json.bin 坰2 2~
+t/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/compile_commands.json.bin ӏ2 2~
|
-z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/metadata_generation_command.txt 坰2
+z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/metadata_generation_command.txt ԏ2
2q
o
-m/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/prefab_config.json 坰2
( 2v
+m/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/prefab_config.json ԏ2
( 2v
t
-r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/symbol_folder_index.txt 坰2
i 2b
+r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86/symbol_folder_index.txt ԏ2
i 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 坰2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt ԏ2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/Debug/6a58wo5c/x86_64/configure_fingerprint.bin b/android/app/.cxx/Debug/6a58wo5c/x86_64/configure_fingerprint.bin
index 8d5cb6e..ad0b00d 100644
--- a/android/app/.cxx/Debug/6a58wo5c/x86_64/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/6a58wo5c/x86_64/configure_fingerprint.bin
@@ -2,28 +2,28 @@ C/C++ Structured Log~
|
z/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2{
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ̴2 2{
y
-w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/android_gradle_build.json 2
+w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/android_gradle_build.json ̴2
2
~
-|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/android_gradle_build_mini.json 2 2m
+|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/android_gradle_build_mini.json ̴2 2m
k
-i/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/build.ninja 2 2q
+i/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/build.ninja ̴2 2q
o
-m/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/build.ninja.txt 2v
+m/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/build.ninja.txt ̴2v
t
-r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/build_file_index.txt 2
^ 2w
+r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/build_file_index.txt ʹ2
^ 2w
u
-s/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/compile_commands.json 2 2{
+s/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/compile_commands.json ʹ2 2{
y
-w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/compile_commands.json.bin 2 2
+w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/compile_commands.json.bin ʹ2 2
-}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/metadata_generation_command.txt 2
+}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/metadata_generation_command.txt ʹ2
2t
r
-p/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/prefab_config.json 2
( 2y
+p/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/prefab_config.json ʹ2
( 2y
w
-u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/symbol_folder_index.txt 2
l 2b
+u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/Debug/6a58wo5c/x86_64/symbol_folder_index.txt ʹ2
l 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt ʹ2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_deps b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_deps
index 60a56c4..c9717dd 100755
Binary files a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_deps and b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_deps differ
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_log b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_log
index 23c551e..8804ea2 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_log
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/.ninja_log
@@ -4,3 +4,4 @@
6 2198 1741521280756215895 CMakeFiles/native-lib.dir/native-lib.cpp.o 282a5c17fd8e3306
10 7926 1742820916832262742 CMakeFiles/native-lib.dir/native-lib.cpp.o 282a5c17fd8e3306
7956 9937 1742820919083327611 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/arm64-v8a/libnative-lib.so f365eec12321e91
+111 1471 1748548355165344476 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/arm64-v8a/libnative-lib.so f365eec12321e91
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/configure_fingerprint.bin b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/configure_fingerprint.bin
index 3a7904e..e0bb041 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/configure_fingerprint.bin
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Log
/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/android_gradle_build.json 2 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/android_gradle_build.json 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/android_gradle_build_mini.json 2 2y
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/android_gradle_build_mini.json 2 2y
w
-u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/build.ninja 2 2}
+u/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/build.ninja 2 2}
{
-y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/build.ninja.txt 2
+y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/build.ninja.txt 2
-~/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/build_file_index.txt 2
^ 2
+~/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/build_file_index.txt 2
^ 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/compile_commands.json 2 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/compile_commands.json 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/compile_commands.json.bin 2 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/compile_commands.json.bin 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/metadata_generation_command.txt 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/metadata_generation_command.txt 2
2
~
-|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/prefab_config.json 2
( 2
+|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/prefab_config.json 2
( 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/symbol_folder_index.txt 2
x 2b
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/arm64-v8a/symbol_folder_index.txt 2
x 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_deps b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_deps
index b766e8a..971e683 100755
Binary files a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_deps and b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_deps differ
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_log b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_log
index 0026a62..e1f5f7b 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_log
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/.ninja_log
@@ -4,3 +4,4 @@
5 1608 1741521283027110183 CMakeFiles/native-lib.dir/native-lib.cpp.o b87079b1ccb85962
1 3076 1742820925175269992 CMakeFiles/native-lib.dir/native-lib.cpp.o b87079b1ccb85962
3076 4061 1742820926159885896 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/armeabi-v7a/libnative-lib.so 4af411d9d89f3387
+13 224 1748548355627771556 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/armeabi-v7a/libnative-lib.so 4af411d9d89f3387
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/configure_fingerprint.bin b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/configure_fingerprint.bin
index 5398975..c6c67c2 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/configure_fingerprint.bin
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Log
/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/android_gradle_build.json 2 ߣ2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/android_gradle_build.json 2 ߣ2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/android_gradle_build_mini.json 2 2{
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/android_gradle_build_mini.json 2 2{
y
-w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/build.ninja 2 Ң2
+w/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/build.ninja 2 Ң2
}
-{/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/build.ninja.txt 2
+{/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/build.ninja.txt 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/build_file_index.txt 2
^ 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/build_file_index.txt 2
^ 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/compile_commands.json 2 Ţ2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/compile_commands.json 2 Ţ2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/compile_commands.json.bin 2 Ţ2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/compile_commands.json.bin 2 Ţ2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/metadata_generation_command.txt 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/metadata_generation_command.txt 2
2
-~/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/prefab_config.json 2
( 2
+~/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/prefab_config.json 2
( 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/symbol_folder_index.txt 2
z 2b
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/armeabi-v7a/symbol_folder_index.txt 2
z 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_deps b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_deps
index 0eca0ba..1180cfc 100755
Binary files a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_deps and b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_deps differ
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_log b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_log
index 7fba75b..64d7a87 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_log
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/.ninja_log
@@ -4,3 +4,4 @@
5 1048 1741521284413359950 CMakeFiles/native-lib.dir/native-lib.cpp.o 5a89557cc882a993
4 1966 1742820930154400498 CMakeFiles/native-lib.dir/native-lib.cpp.o 5a89557cc882a993
1966 3757 1742820931941401305 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/x86/libnative-lib.so f7a6fa481738ebd7
+16 147 1748548355859895987 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/x86/libnative-lib.so f7a6fa481738ebd7
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/configure_fingerprint.bin b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/configure_fingerprint.bin
index dff7645..b638f67 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/configure_fingerprint.bin
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/configure_fingerprint.bin
@@ -2,28 +2,28 @@ C/C++ Structured Log
/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint å2 2
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
-}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/android_gradle_build.json ĥ2
+}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/android_gradle_build.json 2
2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/android_gradle_build_mini.json ĥ2 2s
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/android_gradle_build_mini.json 2 2s
q
-o/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/build.ninja ĥ2DŽ 2w
+o/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/build.ninja 2DŽ 2w
u
-s/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/build.ninja.txt ĥ2|
+s/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/build.ninja.txt 2|
z
-x/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/build_file_index.txt ĥ2
^ 2}
+x/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/build_file_index.txt 2
^ 2}
{
-y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/compile_commands.json ĥ2 2
+y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/compile_commands.json 2 2
-}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/compile_commands.json.bin ĥ2 2
+}/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/compile_commands.json.bin 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/metadata_generation_command.txt ĥ2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/metadata_generation_command.txt 2
2z
x
-v/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/prefab_config.json ĥ2
( 2
+v/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/prefab_config.json 2
( 2
}
-{/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/symbol_folder_index.txt ĥ2
r 2b
+{/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86/symbol_folder_index.txt 2
r 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt ĥ2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_deps b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_deps
index 11ebfe6..1315690 100755
Binary files a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_deps and b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_deps differ
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_log b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_log
index 4ff101b..3e80b73 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_log
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/.ninja_log
@@ -4,3 +4,4 @@
8 833 1741521285451563038 CMakeFiles/native-lib.dir/native-lib.cpp.o 64e19b6e8058a204
29 2917 1742820937015736165 CMakeFiles/native-lib.dir/native-lib.cpp.o 64e19b6e8058a204
2917 3381 1742820937487104560 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/x86_64/libnative-lib.so 6091450195559ce1
+14 186 1748548356158199323 /Users/hamzaaleghwairyeen/development/App/driver_sefer/build/app/intermediates/cxx/RelWithDebInfo/4y6h5l4y/obj/x86_64/libnative-lib.so 6091450195559ce1
diff --git a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/configure_fingerprint.bin b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/configure_fingerprint.bin
index 142ed6f..c77f9fa 100644
--- a/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/configure_fingerprint.bin
+++ b/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Log
/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/additional_project_files.txtC
A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/android_gradle_build.json 2 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/android_gradle_build.json 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/android_gradle_build_mini.json 2 2v
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/android_gradle_build_mini.json 2 2v
t
-r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/build.ninja 2ф 2z
+r/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/build.ninja 2ф 2z
x
-v/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/build.ninja.txt 2
+v/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/build.ninja.txt 2
}
-{/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/build_file_index.txt 2
^ 2
+{/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/build_file_index.txt 2
^ 2
~
-|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/compile_commands.json 2 2
+|/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/compile_commands.json 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/compile_commands.json.bin 2 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/compile_commands.json.bin 2 2
-/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/metadata_generation_command.txt 2
+/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/metadata_generation_command.txt 2
2}
{
-y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/prefab_config.json 2
( 2
+y/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/prefab_config.json 2
( 2
-~/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/symbol_folder_index.txt 2
u 2b
+~/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/.cxx/RelWithDebInfo/4y6h5l4y/x86_64/symbol_folder_index.txt 2
u 2b
`
-^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
+^/Users/hamzaaleghwairyeen/development/App/driver_sefer/android/app/src/main/cpp/CMakeLists.txt 2
Ў2
\ No newline at end of file
diff --git a/android/app/build.gradle b/android/app/build.gradle
index c51aecc..0e3f6c1 100755
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -66,8 +66,8 @@ android {
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdk = 23
targetSdk = flutter.targetSdkVersion
- versionCode = 139
- versionName = '2.0.139'
+ versionCode = 142
+ versionName = '2.0.142'
multiDexEnabled =true
}
sourceSets {
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 3c98409..aef1f9f 100755
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -474,14 +474,14 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
AppAuth: d4f13a8fe0baf391b2108511793e4b479691fb73
- audio_session: 088d2483ebd1dc43f51d253d4a1c517d9a2e7207
- background_location: 1b80c1fe3abd9912bca298618f6e365abf6f588f
- camera_avfoundation: dd002b0330f4981e1bbcb46ae9b62829237459a4
- device_info_plus: bf2e3232933866d73fe290f2942f2156cdd10342
+ audio_session: f08db0697111ac84ba46191b55488c0563bb29c6
+ background_location: d888b93eca7cff45c2c084b7ecea2eec70b6e490
+ camera_avfoundation: 04b44aeb14070126c6529e5ab82cc7c9fca107cf
+ device_info_plus: 21fcca2080fbcd348be798aa36c3e5ed849eefbe
Firebase: cf1b19f21410b029b6786a54e9764a0cacad3c99
- firebase_auth: c4bdd9d7b338ac004008cb5024a643584e0ec03f
- firebase_core: b62a5080210edad3f2934314a8b2c6f5124e8e10
- firebase_messaging: 98619a0572d82cfb3668e78859ba9f1110e268c9
+ firebase_auth: dee97e7428ef7c304083839d4e3bc4313c03afd5
+ firebase_core: 726c34112998e66d1ddaf4b1bef78ed2dd4b9804
+ firebase_messaging: a538130cb2bca3ea0ff0892b8c948bd7d20ecaed
FirebaseAnalytics: 3feef9ae8733c567866342a1000691baaa7cad49
FirebaseAppCheckInterop: 347aa09a805219a31249b58fc956888e9fcb314b
FirebaseAuth: c359af98bd703cbf4293eec107a40de08ede6ce6
@@ -492,17 +492,17 @@ SPEC CHECKSUMS:
FirebaseInstallations: 6ef4a1c7eb2a61ee1f74727d7f6ce2e72acf1414
FirebaseMessaging: f8a160d99c2c2e5babbbcc90c4a3e15db036aee2
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
- flutter_app_group_directory: d2c3337f424828558953172f9378d00df9b7756d
- flutter_contacts: edb1c5ce76aa433e20e6cb14c615f4c0b66e0983
- flutter_image_compress_common: ec1d45c362c9d30a3f6a0426c297f47c52007e3e
- flutter_inappwebview_ios: 6f63631e2c62a7c350263b13fa5427aedefe81d4
- flutter_local_notifications: df98d66e515e1ca797af436137b4459b160ad8c9
- flutter_secure_storage: d33dac7ae2ea08509be337e775f6b59f1ff45f12
- flutter_tts: 0f492aab6accf87059b72354fcb4ba934304771d
- geolocator_apple: 9bcea1918ff7f0062d98345d238ae12718acfbc1
+ flutter_app_group_directory: 55b5362007d1c0cb45dc1dd1e94f67d615f45a6b
+ flutter_contacts: 5383945387e7ca37cf963d4be57c21f2fc15ca9f
+ flutter_image_compress_common: 1697a328fd72bfb335507c6bca1a65fa5ad87df1
+ flutter_inappwebview_ios: b89ba3482b96fb25e00c967aae065701b66e9b99
+ flutter_local_notifications: 395056b3175ba4f08480a7c5de30cd36d69827e4
+ flutter_secure_storage: 1ed9476fba7e7a782b22888f956cce43e2c62f13
+ flutter_tts: b88dbc8655d3dc961bc4a796e4e16a4cc1795833
+ geolocator_apple: 1560c3c875af2a412242c7a923e15d0d401966ff
Google-Maps-iOS-Utils: 66d6de12be1ce6d3742a54661e7a79cb317a9321
- google_maps_flutter_ios: e31555a04d1986ab130f2b9f24b6cdc861acc6d3
- google_sign_in_ios: 07375bfbf2620bc93a602c0e27160d6afc6ead38
+ google_maps_flutter_ios: 0291eb2aa252298a769b04d075e4a9d747ff7264
+ google_sign_in_ios: 0ab078e60da6dfe23cbc55c83502b52bba1aad63
GoogleAppMeasurement: 987769c4ca6b968f2479fbcc9fe3ce34af454b8e
GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
GoogleMaps: 8939898920281c649150e0af74aa291c60f2e77d
@@ -510,32 +510,32 @@ SPEC CHECKSUMS:
GoogleUtilities: 26a3abef001b6533cf678d3eb38fd3f614b7872d
GTMAppAuth: f69bd07d68cd3b766125f7e072c45d7340dea0de
GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6
- image_cropper: 37d40f62177c101ff4c164906d259ea2c3aa70cf
- image_picker_ios: c560581cceedb403a6ff17f2f816d7fea1421fc1
+ image_cropper: 5f162dcf988100dc1513f9c6b7eb42cd6fbf9156
+ image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a
IOSSecuritySuite: b51056d5411aee567153ca86ce7f6edfdc5d2654
- jailbreak_root_detection: b95de80c3e51eec1fc7d0225784d2fc038fa95ed
- just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa
+ jailbreak_root_detection: 9201e1dfd51dc23069cbfb8d4f4a2d18305170bf
+ just_audio: 6c031bb61297cf218b4462be616638e81c058e97
libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009
- live_activities: 5a5ddcfe2bd2cbbe7555a5da9c35b07d1a4ff2e8
- local_auth_darwin: 66e40372f1c29f383a314c738c7446e2f7fdadc3
- location: d5cf8598915965547c3f36761ae9cc4f4e87d22e
+ live_activities: f2e133059358f99655c8d181d65ff54f024a6e93
+ local_auth_darwin: 553ce4f9b16d3fdfeafce9cf042e7c9f77c1c391
+ location: 155caecf9da4f280ab5fe4a55f94ceccfab838f8
Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d
nanopb: fad817b59e0457d11a5dfbde799381cd727c1275
OrderedSet: e539b66b644ff081c73a262d24ad552a69be3a94
- package_info_plus: c0502532a26c7662a62a356cebe2692ec5fe4ec4
- path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
- permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2
+ package_info_plus: af8e2ca6888548050f16fa2f1938db7b5a5df499
+ path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
+ permission_handler_apple: 4ed2196e43d0651e8ff7ca3483a069d469701f2d
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
- quick_actions_ios: 56f3cbaa71e94f212838d1f9fe354bd0734779bf
+ quick_actions_ios: 4b07fb49d8d8f3518d7565fbb7a91014067a7d82
RecaptchaInterop: 7d1a4a01a6b2cb1610a47ef3f85f0c411434cb21
- record_darwin: 3b1a8e7d5c0cbf45ad6165b4d83a6ca643d929c3
+ record_darwin: fb1f375f1d9603714f55b8708a903bbb91ffdb0a
SDWebImage: 73c6079366fea25fa4bb9640d5fb58f0893facd8
SDWebImageWebPCoder: e38c0a70396191361d60c092933e22c20d5b1380
- share: 0b2c3e82132f5888bccca3351c504d0003b3b410
- sign_in_with_apple: f3bf75217ea4c2c8b91823f225d70230119b8440
- sqflite_darwin: 5a7236e3b501866c1c9befc6771dfd73ffb8702d
+ share: a34936589f3090d59481bcdc5c30cc9dd47c75f6
+ sign_in_with_apple: c5dcc141574c8c54d5ac99dd2163c0c72ad22418
+ sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0
Stripe: 9757efc154de1d9615cbea4836d590bc4034d3a4
- stripe_ios: 4463f81157e91cbbf441e1b3fdf5edce90787491
+ stripe_ios: ac48e0488f95ac7ddea9475fd30f3d739e0bae52
StripeApplePay: ca33933601302742623762157d587b79b942d073
StripeCore: 2af250a2366ff2bbf64d4243c5f9bbf2a98b2aaf
StripeFinancialConnections: 3ab1ef6182ec44e71c29e9a2100b663f9713ac20
@@ -544,11 +544,11 @@ SPEC CHECKSUMS:
StripePaymentsUI: 7d7cffb2ecfc0d6b5ac3a4488c02893a5ff6cc77
StripeUICore: bb102d453b1e1a10a37f810bc0a9aa0675fb17fd
TOCropViewController: 80b8985ad794298fb69d3341de183f33d1853654
- url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe
- vibration: 7d883d141656a1c1a6d8d238616b2042a51a1241
- video_player_avfoundation: 7c6c11d8470e1675df7397027218274b6d2360b3
- wakelock_plus: 373cfe59b235a6dd5837d0fb88791d2f13a90d56
- webview_flutter_wkwebview: 0982481e3d9c78fd5c6f62a002fcd24fc791f1e4
+ url_launcher_ios: 694010445543906933d732453a59da0a173ae33d
+ vibration: 8e2f50fc35bb736f9eecb7dd9f7047fbb6a6e888
+ video_player_avfoundation: 2cef49524dd1f16c5300b9cd6efd9611ce03639b
+ wakelock_plus: 04623e3f525556020ebd4034310f20fe7fda8b49
+ webview_flutter_wkwebview: 44d4dee7d7056d5ad185d25b38404436d56c547c
PODFILE CHECKSUM: 07f180bff2523e15e01e42c30418373e5627c8fd
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index a310d25..d4f5feb 100755
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -35,7 +35,7 @@
CFBundlePackageType
APPL
CFBundleShortVersionString
- 102
+ 105
CFBundleSignature
????
CFBundleURLTypes
@@ -50,7 +50,7 @@
CFBundleVersion
- 5.0.102
+ 5.0.105
FirebaseAppDelegateProxyEnabled
NO
GMSApiKey
diff --git a/lib/constant/links.dart b/lib/constant/links.dart
index 503e5ec..325ca61 100755
--- a/lib/constant/links.dart
+++ b/lib/constant/links.dart
@@ -15,28 +15,27 @@ class AppLink {
// static final String seferAlexandriaServer = Env.seferAlexandriaServer;
// static final String seferCairoServer = Env.seferCairoServer;
// static final String seferCairoServer =
- // 'https://server.sefer.click/sefer.click/sefer';
+ // 'https://api.tripz-egypt.com/tripz';
// static final String seferGizaServer = Env.seferCairoServer;
// static final String seferAlexandriaServer = Env.seferCairoServer;
// static final String seferPaymentServer = '${Env.seferCairoServer}/ride';
// static final String seferPaymentServer0 = Env.seferCairoServer;
// static const String seferGizaServer = 'https://gizasefer.online/sefer';
// static final String seferGizaServer = Env.seferGizaServer;
- static final String endPoint =
- box.read(BoxName.serverChosen) ?? box.read(BoxName.basicLink);
- // 'https://server.sefer.click/sefer.click/sefer';
+ static final String endPoint = 'https://api.tripz-egypt.com/tripz';
+ // 'https://api.tripz-egypt.com/tripz';
static final String server = endPoint;
static String seferCairoServer = endPoint;
- static String seferGizaServer = box.read('Giza');
- static String seferAlexandriaServer = box.read('Alexandria');
+ static String seferGizaServer =
+ box.read('Giza') ?? box.read(BoxName.serverChosen);
+ static String seferAlexandriaServer =
+ box.read('Alexandria') ?? box.read(BoxName.serverChosen);
// static final String server = Env.serverPHP;
- static String loginJwtDriver =
- "https://server.sefer.click/sefer.click/sefer/loginJwtDriver.php";
+ static String loginJwtDriver = "$server/loginJwtDriver.php";
static String loginJwtWalletDriver =
"$seferPaymentServer/loginJwtWalletDriver.php";
- static String loginFirstTimeDriver =
- "https://server.sefer.click/sefer.click/sefer/loginFirstTimeDriver.php";
+ static String loginFirstTimeDriver = "$server/loginFirstTimeDriver.php";
static String googleMapsLink = 'https://maps.googleapis.com/maps/api/';
static String llama = 'https://api.llama-api.com/chat/completions';
@@ -92,7 +91,7 @@ class AppLink {
static String ride = '$server/ride';
static String addCancelRideFromPassenger = "$server/ride/cancelRide/add.php";
static String addCancelTripFromDriverAfterApplied =
- "$server/ride/cancelRide/addCancelTripFromDriverAfterApplied.php";
+ "$ride/cancelRide/addCancelTripFromDriverAfterApplied.php";
static String cancelRide = "$server/ride/cancelRide/get.php";
//-----------------ridessss------------------
static String addRides = "$ride/rides/add.php";
@@ -102,10 +101,9 @@ class AppLink {
static String getTripCountByCaptain = "$ride/rides/getTripCountByCaptain.php";
static String getRideOrderID = "$ride/rides/getRideOrderID.php";
static String getRideStatus = "$ride/rides/getRideStatus.php";
- static String getapiKey = Env.getapiKey;
+ static String getapiKey = "$ride/apiKey/get.php";
- static String getapiKeySefer =
- "https://api.sefer.click/sefer/ride/apiKey/get.php";
+ static String getapiKeySefer = "$ride/apiKey/get.php";
static String getRideStatusBegin = "$ride/rides/getRideStatusBegin.php";
static String getRideStatusFromStartApp =
"$ride/rides/getRideStatusFromStartApp.php";
@@ -226,16 +224,16 @@ class AppLink {
static String addRateToDriver = "$ride/rate/addRateToDriver.php";
static String addRateApp = "$ride/rate/add_rate_app.php";
static String sendEmailRateingApp =
- "https://api.sefer.click/sefer/ride/rate/sendEmailRateingApp.php";
+ "https://api.tripz-egypt.com/tripz/ride/rate/sendEmailRateingApp.php";
static String getDriverRate = "$ride/rate/getDriverRate.php";
static String getPassengerRate = "$ride/rate/getPassengerRate.php";
////////////////emails ============//
static String sendEmailToPassengerForTripDetails =
- "https://api.sefer.click/sefer/ride/rides/emailToPassengerTripDetail.php";
+ "https://api.tripz-egypt.com/tripz/ride/rides/emailToPassengerTripDetail.php";
static String sendEmailToDrivertransaction =
- "https://api.sefer.click/sefer/Admin/sendEmailToDrivertransaction.php";
- // "https://api.sefer.click/sefer/Admin/sendEmailToDrivertransaction.php";
+ "https://api.tripz-egypt.com/tripz/Admin/sendEmailToDrivertransaction.php";
+ // "https://api.tripz-egypt.com/tripz/Admin/sendEmailToDrivertransaction.php";
// ===========================================
static String pathImage = "$server/upload/types/";
static String uploadImage = "$server/uploadImage.php";
@@ -253,7 +251,7 @@ class AppLink {
static String getCarsLocationByPassenger = "$location/get.php";
static String addpassengerLocation = "$location/addpassengerLocation.php";
static String getLocationAreaLinks =
- "https://server.sefer.click/sefer.click/sefer/ride/location/get_location_area_links.php";
+ "https://api.tripz-egypt.com/tripz/ride/location/get_location_area_links.php";
static String getLatestLocationPassenger =
"$location/getLatestLocationPassenger.php";
static String getFemalDriverLocationByPassenger =
@@ -261,6 +259,7 @@ class AppLink {
static String getDriverCarsLocationToPassengerAfterApplied =
"$location/getDriverCarsLocationToPassengerAfterApplied.php";
static String addCarsLocationByPassenger = "$location/add.php";
+ static String saveBehavior = "$location/save_behavior.php";
static String addCarsLocationGizaEndpoint = "$location/add.php";
static String addCarsLocationAlexandriaEndpoint = "$location/add.php";
static String addCarsLocationCairoEndpoint = "$location/add.php";
@@ -271,6 +270,10 @@ class AppLink {
static String getTotalDriverDurationToday =
"$location/getTotalDriverDurationToday.php";
+ //==================get_driver_behavior.php=============
+ static String get_driver_behavior =
+ '$server/ride/driver_behavior/get_driver_behavior.php';
+
//==================cars new drivers=============
static String addNewCarsDrivers = '$server/ride/carDrivers/add.php';
static String getNewCarsDrivers = '$server/ride/carDrivers/get.php';
diff --git a/lib/constant/table_names.dart b/lib/constant/table_names.dart
index 4366a34..6e1b658 100755
--- a/lib/constant/table_names.dart
+++ b/lib/constant/table_names.dart
@@ -5,6 +5,7 @@ class TableName {
static const String driverOrdersRefuse = "driverOrdersRefuse";
static const String rideLocation = "rideLocation";
static const String faceDetectTimes = "faceDetectTimes";
+ static const String behavior = "behavior";
static const String captainNotification = "captainNotification";
static const String applyRideFromOverLay = "applyRideFromOverLay";
}
diff --git a/lib/controller/auth/captin/history_captain.dart b/lib/controller/auth/captin/history_captain.dart
index 9b66762..528b136 100755
--- a/lib/controller/auth/captin/history_captain.dart
+++ b/lib/controller/auth/captin/history_captain.dart
@@ -45,9 +45,8 @@ class HistoryCaptainController extends GetxController {
getHistoryDetails(String orderId) async {
isloading = true;
- var res = await CRUD().get(
- link: AppLink.getRideOrderID,
- payload: {'id': EncryptionHelper.instance.encryptData(orderId)});
+ var res = await CRUD()
+ .get(link: AppLink.getRideOrderID, payload: {'id': (orderId)});
historyDetailsData = jsonDecode(res);
isloading = false;
update();
diff --git a/lib/controller/auth/captin/invit_controller.dart b/lib/controller/auth/captin/invit_controller.dart
index c498039..c8ea87f 100755
--- a/lib/controller/auth/captin/invit_controller.dart
+++ b/lib/controller/auth/captin/invit_controller.dart
@@ -150,9 +150,9 @@ Download the Tripz app now and enjoy your ride!
void onSelectDriverInvitation(int index) async {
MyDialog().getDialog(
int.parse((driverInvitationData[index]['countOfInvitDriver'])) < 100
- ? '${'When'.tr} ${EncryptionHelper.instance.decryptData(driverInvitationData[index]['invitorName'])} ${"complete, you can claim your gift".tr} '
+ ? '${'When'.tr} ${(driverInvitationData[index]['invitorName'])} ${"complete, you can claim your gift".tr} '
: 'You deserve the gift'.tr,
- '${EncryptionHelper.instance.decryptData(driverInvitationData[index]['invitorName'])} ${(driverInvitationData[index]['countOfInvitDriver'])} / 100 ${'Trip'.tr}',
+ '${(driverInvitationData[index]['invitorName'])} ${(driverInvitationData[index]['countOfInvitDriver'])} / 100 ${'Trip'.tr}',
() async {
bool isAvailable = await LocalAuthentication().isDeviceSupported();
if (int.parse((driverInvitationData[index]['countOfInvitDriver'])) <
@@ -173,10 +173,9 @@ Download the Tripz app now and enjoy your ride!
if ((driverInvitationData[index]['isGiftToken']).toString() ==
'0') {
Get.back();
- await CRUD().post(link: AppLink.updateInviteDriver, payload: {
- 'id': EncryptionHelper.instance
- .encryptData(driverInvitationData[index]['id'])
- });
+ await CRUD().post(
+ link: AppLink.updateInviteDriver,
+ payload: {'id': (driverInvitationData[index]['id'])});
await Get.find().addDriverPayment(
'paymentMethod',
('500'),
@@ -186,8 +185,7 @@ Download the Tripz app now and enjoy your ride!
await Get.find()
.addDriverWalletToInvitor(
'paymentMethod',
- EncryptionHelper.instance.encryptData(
- driverInvitationData[index]['driverInviterId']),
+ (driverInvitationData[index]['driverInviterId']),
('500'),
);
await Get.find()
@@ -231,9 +229,9 @@ Download the Tripz app now and enjoy your ride!
int.parse(driverInvitationDataToPassengers[index]['countOfInvitDriver']
.toString()) <
3
- ? '${'When'.tr} ${EncryptionHelper.instance.decryptData(driverInvitationDataToPassengers[index]['passengerName'].toString())} ${"complete, you can claim your gift".tr} '
+ ? '${'When'.tr} ${(driverInvitationDataToPassengers[index]['passengerName'].toString())} ${"complete, you can claim your gift".tr} '
: 'You deserve the gift'.tr,
- '${EncryptionHelper.instance.decryptData(driverInvitationDataToPassengers[index]['passengerName'].toString())} ${driverInvitationDataToPassengers[index]['countOfInvitDriver']} / 3 ${'Trip'.tr}',
+ '${(driverInvitationDataToPassengers[index]['passengerName'].toString())} ${driverInvitationDataToPassengers[index]['countOfInvitDriver']} / 3 ${'Trip'.tr}',
() async {
if (int.parse(driverInvitationDataToPassengers[index]
['countOfInvitDriver']
@@ -342,7 +340,7 @@ Download the Tripz app now and enjoy your ride!
});
if (response != 'failure') {
- var d = jsonDecode(response);
+ var d = (response);
mySnackbarSuccess('Invite sent successfully'.tr);
String message = '${'*Tripz DRIVER CODE*'.tr}\n\n'
'${"Use this code in registration".tr}\n'
diff --git a/lib/controller/auth/captin/login_captin_controller.dart b/lib/controller/auth/captin/login_captin_controller.dart
index 27686f8..18e4adb 100755
--- a/lib/controller/auth/captin/login_captin_controller.dart
+++ b/lib/controller/auth/captin/login_captin_controller.dart
@@ -98,11 +98,12 @@ class LoginDriverController extends GetxController {
final random = Random();
if (random.nextBool()) {
- await SecurityHelper.performSecurityChecks();
+ // await SecurityHelper.performSecurityChecks();
} else {
await SecurityChecks.isDeviceRootedFromNative(Get.context!);
}
String fingerPrint = await DeviceHelper.getDeviceFingerprint();
+ // print('fingerPrint: ${fingerPrint}');
dev = Platform.isAndroid ? 'android' : 'ios';
var payload = {
'id': box.read(BoxName.driverID),
@@ -118,7 +119,7 @@ class LoginDriverController extends GetxController {
// Log.print('response.body: ${response1.body}');
// print(payload);
// Log.print(
- // 'jsonDecode(response1.body)["jwt"]: ${jsonDecode(response1.body)['jwt']}');
+ // 'jsonDecode(response1.body)["jwt"]: ${jsonDecode(response1.body)['jwt']}');
await box.write(BoxName.hmac, jsonDecode(response1.body)['hmac']);
return jsonDecode(response1.body)['jwt'].toString();
}
@@ -144,9 +145,11 @@ class LoginDriverController extends GetxController {
);
if (response0.statusCode == 200) {
final decodedResponse1 = jsonDecode(response0.body);
+ // Log.print('decodedResponse1: ${decodedResponse1}');
final jwt = decodedResponse1['jwt'];
box.write(BoxName.jwt, X.c(X.c(X.c(jwt, cn), cC), cs));
+ // await box.write(BoxName.hmac, decodedResponse1['hmac']);
await AppInitializer().getAIKey(Driver.keyOfApp);
await AppInitializer().getAIKey(Driver.initializationVector);
@@ -183,6 +186,7 @@ class LoginDriverController extends GetxController {
// Log.print('decodedResponse1: ${decodedResponse1}');
final jwt = decodedResponse1['jwt'];
+ // await box.write(BoxName.hmac, decodedResponse1['hmac']);
await box.write(BoxName.jwt, X.c(X.c(X.c(jwt, cn), cC), cs));
await AppInitializer().getKey();
}
@@ -230,7 +234,7 @@ class LoginDriverController extends GetxController {
var res = await CRUD().get(link: AppLink.loginFromGoogleCaptin, payload: {
'email': email.toString().contains('@')
// ? (box.read(BoxName.emailDriver))
- ? EncryptionHelper.instance.encryptData(email)
+ ? (email)
: email,
'id': driverID,
});
@@ -252,10 +256,7 @@ class LoginDriverController extends GetxController {
if (jsonDecoeded.isNotEmpty) {
if (jsonDecoeded['status'] == 'success' &&
jsonDecoeded['data'][0]['is_verified'].toString() == '1') {
- box.write(
- BoxName.emailDriver,
- EncryptionHelper.instance
- .decryptData(jsonDecoeded['data'][0]['email']));
+ box.write(BoxName.emailDriver, jsonDecoeded['data'][0]['email']);
box.write(BoxName.firstTimeLoadKey, 'false');
box.write(BoxName.driverID, (jsonDecoeded['data'][0]['id']));
box.write(BoxName.isTest, '1');
@@ -276,16 +277,13 @@ class LoginDriverController extends GetxController {
(jsonDecoeded['data'][0]['accountBank']));
box.write(
BoxName.nameDriver,
- '${EncryptionHelper.instance.decryptData(jsonDecoeded['data'][0]['first_name'])}'
- ' ${EncryptionHelper.instance.decryptData(jsonDecoeded['data'][0]['last_name'])}');
+ '${(jsonDecoeded['data'][0]['first_name'])}'
+ ' ${(jsonDecoeded['data'][0]['last_name'])}');
if (((jsonDecoeded['data'][0]['model'])
.toString()
.contains('دراجه') ||
jsonDecoeded['data'][0]['make'].toString().contains('دراجه '))) {
- if (EncryptionHelper.instance
- .decryptData(jsonDecoeded['data'][0]['gender'])
- .toString() ==
- 'Male') {
+ if ((jsonDecoeded['data'][0]['gender']).toString() == 'Male') {
box.write(BoxName.carTypeOfDriver, 'Scooter');
} else {
box.write(BoxName.carTypeOfDriver, 'Pink Bike');
@@ -311,8 +309,9 @@ class LoginDriverController extends GetxController {
link: AppLink.getDriverToken,
payload: {'captain_id': (box.read(BoxName.driverID)).toString()});
- String? fingerPrint = await DeviceHelper.getDeviceFingerprint();
- await storage.write(key: BoxName.fingerPrint, value: fingerPrint);
+ String fingerPrint = await DeviceHelper.getDeviceFingerprint();
+ await storage.write(
+ key: BoxName.fingerPrint, value: fingerPrint.toString());
if (token != 'failure') {
if ((jsonDecode(token)['data'][0]['token']) !=
@@ -320,9 +319,7 @@ class LoginDriverController extends GetxController {
Get.put(FirebaseMessagesController()).sendNotificationToDriverMAP(
'token change'.tr,
'change device'.tr,
- EncryptionHelper.instance
- .decryptData(jsonDecode(token)['data'][0]['token'])
- .toString(),
+ (jsonDecode(token)['data'][0]['token']).toString(),
[],
'promo.wav');
await Get.defaultDialog(
@@ -337,9 +334,10 @@ class LoginDriverController extends GetxController {
'captain_id': (box.read(BoxName.driverID)).toString(),
'fingerPrint': (fingerPrint).toString()
});
+ // to save in payment server fingerprint
await CRUD().post(
link:
- "${AppLink.seferAlexandriaServer}/ride/firebase/addDriver.php",
+ "${AppLink.seferPaymentServer}/ride/firebase/addDriver.php",
payload: {
'token': (box.read(BoxName.tokenDriver)),
'captain_id':
@@ -381,7 +379,7 @@ class LoginDriverController extends GetxController {
update();
var res = await CRUD()
.get(link: AppLink.loginUsingCredentialsWithoutGoogle, payload: {
- 'email': EncryptionHelper.instance.encryptData(email),
+ 'email': (email),
'password': password,
});
box.write(BoxName.emailDriver, (email).toString());
@@ -409,33 +407,25 @@ class LoginDriverController extends GetxController {
jsonDecoeded['data'][0]['is_verified'].toString());
box.write(BoxName.phoneDriver, (jsonDecoeded['data'][0]['phone']));
box.write(
- BoxName.nameArabic,
- EncryptionHelper.instance
- .decryptData(jsonDecoeded['data'][0]['name_arabic']));
+ BoxName.nameArabic, (jsonDecoeded['data'][0]['name_arabic']));
box.write(
BoxName.bankCodeDriver, (jsonDecoeded['data'][0]['bankCode']));
box.write(BoxName.accountBankNumberDriver,
jsonDecoeded['data'][0]['accountBank']);
box.write(
BoxName.nameDriver,
- '${EncryptionHelper.instance.decryptData(jsonDecoeded['data'][0]['first_name'])}'
- ' ${EncryptionHelper.instance.decryptData(jsonDecoeded['data'][0]['last_name'])}');
+ '${(jsonDecoeded['data'][0]['first_name'])}'
+ ' ${(jsonDecoeded['data'][0]['last_name'])}');
if ((jsonDecoeded['data'][0]['model'].toString().contains('دراجه') ||
jsonDecoeded['data'][0]['make'].toString().contains('دراجه '))) {
- if (EncryptionHelper.instance
- .decryptData(jsonDecoeded['data'][0]['gender'])
- .toString() ==
- 'Male') {
+ if ((jsonDecoeded['data'][0]['gender']).toString() == 'Male') {
box.write(BoxName.carTypeOfDriver, 'Scooter');
} else {
box.write(BoxName.carTypeOfDriver, 'Pink Bike');
}
} else if (int.parse(jsonDecoeded['data'][0]['year'].toString()) >
2017) {
- if (EncryptionHelper.instance
- .decryptData(jsonDecoeded['data'][0]['gender'])
- .toString() !=
- 'Male') {
+ if ((jsonDecoeded['data'][0]['gender']).toString() != 'Male') {
box.write(BoxName.carTypeOfDriver, 'Lady');
} else {
box.write(BoxName.carTypeOfDriver, 'Comfort');
@@ -463,9 +453,7 @@ class LoginDriverController extends GetxController {
Get.put(FirebaseMessagesController()).sendNotificationToDriverMAP(
'token change'.tr,
'change device'.tr,
- EncryptionHelper.instance
- .decryptData(jsonDecode(token)['data'][0]['token'])
- .toString(),
+ (jsonDecode(token)['data'][0]['token']).toString(),
[],
'ding.wav');
Get.defaultDialog(
diff --git a/lib/controller/auth/captin/register_captin_controller.dart b/lib/controller/auth/captin/register_captin_controller.dart
index 47cfe35..beff07c 100755
--- a/lib/controller/auth/captin/register_captin_controller.dart
+++ b/lib/controller/auth/captin/register_captin_controller.dart
@@ -100,7 +100,6 @@ class RegisterCaptainController extends GetxController {
SmsEgyptController smsEgyptController = Get.put(SmsEgyptController());
isLoading = true;
update();
- int randomNumber = Random().nextInt(100000) + 1;
isLoading = true;
update();
if (formKey3.currentState!.validate()) {
@@ -108,8 +107,7 @@ class RegisterCaptainController extends GetxController {
if (isValidEgyptianPhoneNumber(phoneController.text)) {
var responseCheker = await CRUD()
.post(link: AppLink.checkPhoneNumberISVerfiedDriver, payload: {
- 'phone_number': EncryptionHelper.instance
- .encryptData('+2${phoneController.text}'),
+ 'phone_number': ('+2${phoneController.text}'),
});
if (responseCheker != 'failure') {
var d = jsonDecode(responseCheker);
@@ -117,29 +115,18 @@ class RegisterCaptainController extends GetxController {
Get.snackbar('Phone number is verified before'.tr, '',
backgroundColor: AppColor.greenColor);
box.write(BoxName.phoneVerified, '1');
- box.write(
- BoxName.phone,
- EncryptionHelper.instance
- .encryptData('+2${phoneController.text}'));
+ box.write(BoxName.phone, ('+2${phoneController.text}'));
await Get.put(LoginDriverController()).loginWithGoogleCredential(
box.read(BoxName.driverID).toString(),
- EncryptionHelper.instance
- .encryptData(box.read(BoxName.emailDriver).toString()),
+ (box.read(BoxName.emailDriver).toString()),
);
} else {
await CRUD().post(link: AppLink.sendVerifyOtpMessage, payload: {
- 'phone_number': EncryptionHelper.instance
- .encryptData('+2${phoneController.text}'),
- 'token_code': EncryptionHelper.instance
- .encryptData(randomNumber.toString()),
+ 'phone_number': ('+2${phoneController.text}'),
"driverId": box.read(BoxName.driverID),
- "email": EncryptionHelper.instance
- .encryptData(box.read(BoxName.emailDriver)),
+ "email": (box.read(BoxName.emailDriver)),
});
- await smsEgyptController.sendSmsEgypt(
- phoneController.text.toString(), randomNumber.toString());
-
isSent = true;
isLoading = false;
@@ -147,17 +134,11 @@ class RegisterCaptainController extends GetxController {
}
} else {
await CRUD().post(link: AppLink.sendVerifyOtpMessage, payload: {
- 'phone_number': EncryptionHelper.instance
- .encryptData('+2${phoneController.text}'),
- 'token_code': EncryptionHelper.instance
- .encryptData(randomNumber.toString()),
+ 'phone_number': ('+2${phoneController.text}'),
"driverId": box.read(BoxName.driverID),
"email": box.read(BoxName.emailDriver),
});
- await smsEgyptController.sendSmsEgypt(
- phoneController.text.toString(), randomNumber.toString());
-
isSent = true;
isLoading = false;
@@ -250,8 +231,7 @@ class RegisterCaptainController extends GetxController {
_handleAlreadyVerified() {
mySnackbarSuccess('Phone number is already verified'.tr);
box.write(BoxName.phoneVerified, '1');
- box.write(BoxName.phone,
- EncryptionHelper.instance.encryptData('+2${phoneController.text}'));
+ box.write(BoxName.phone, ('+2${phoneController.text}'));
Get.put(LoginDriverController()).loginWithGoogleCredential(
box.read(BoxName.driverID).toString(),
box.read(BoxName.emailDriver).toString(),
@@ -266,15 +246,14 @@ class RegisterCaptainController extends GetxController {
await CRUD().post(
link: AppLink.sendVerifyOtpMessage,
payload: {
- 'phone_number': EncryptionHelper.instance.encryptData('+2$phoneNumber'),
- 'token_code':
- EncryptionHelper.instance.encryptData(randomNumber.toString()),
+ 'phone_number': ('+2$phoneNumber'),
+ 'token_code': (randomNumber.toString()),
'driverId': box.read(BoxName.driverID),
'email': box.read(BoxName.emailDriver),
},
);
- await smsEgyptController.sendSmsEgypt(phoneNumber, randomNumber.toString());
+ await smsEgyptController.sendSmsEgypt(phoneNumber);
lastOtpSentTime = DateTime.now(); // Update the last OTP sent time
isSent = true;
@@ -286,15 +265,12 @@ class RegisterCaptainController extends GetxController {
// var loginDriverController = Get.put(LoginDriverController());
if (formKey3.currentState!.validate()) {
var res = await CRUD().post(link: AppLink.verifyOtpDriver, payload: {
- 'phone_number':
- EncryptionHelper.instance.encryptData('+2${phoneController.text}'),
- 'token_code':
- EncryptionHelper.instance.encryptData(verifyCode.text.toString()),
+ 'phone_number': ('+2${phoneController.text}'),
+ 'token_code': (verifyCode.text.toString()),
});
if (res != 'failure') {
// var dec = jsonDecode(res);
- box.write(BoxName.phoneDriver,
- EncryptionHelper.instance.encryptData('+2${phoneController.text}'));
+ box.write(BoxName.phoneDriver, ('+2${phoneController.text}'));
box.write(BoxName.phoneVerified, '1');
// loginDriverController.isGoogleLogin == true
@@ -319,10 +295,9 @@ class RegisterCaptainController extends GetxController {
sendVerifications() async {
var res = await CRUD().post(link: AppLink.verifyEmail, payload: {
'email': emailController.text.isEmpty
- ? EncryptionHelper.instance.encryptData(
- Get.find().emailController.text.toString())
- : EncryptionHelper.instance.encryptData(emailController.text),
- 'token': EncryptionHelper.instance.encryptData(verifyCode.text),
+ ? (Get.find().emailController.text.toString())
+ : (emailController.text),
+ 'token': (verifyCode.text),
});
if (res != 'failure') {
diff --git a/lib/controller/auth/google_sign.dart b/lib/controller/auth/google_sign.dart
index 6db6442..ffe4528 100755
--- a/lib/controller/auth/google_sign.dart
+++ b/lib/controller/auth/google_sign.dart
@@ -94,9 +94,8 @@ class GoogleSignInHelper {
// Retrieve driverID and emailDriver with added validation
final driverID =
(box.read(BoxName.driverID)!.toString()) ?? 'Unknown ID';
- final emailDriver = EncryptionHelper.instance
- .encryptData(box.read(BoxName.emailDriver)!.toString()) ??
- 'Unknown Email';
+ final emailDriver =
+ (box.read(BoxName.emailDriver)!.toString()) ?? 'Unknown Email';
// Debug print statements
print('Driver ID: $driverID');
diff --git a/lib/controller/auth/login_controller.dart b/lib/controller/auth/login_controller.dart
index 8da9a09..edb3bd7 100755
--- a/lib/controller/auth/login_controller.dart
+++ b/lib/controller/auth/login_controller.dart
@@ -60,10 +60,7 @@ class LoginController extends GetxController {
if (jsonDecoeded['status'] == 'success') {
if (jsonDecoeded['data'][0]['verified'] == 1) {
box.write(BoxName.driverID, jsonDecoeded['data'][0]['id']);
- box.write(
- BoxName.emailDriver,
- EncryptionHelper.instance
- .encryptData(jsonDecoeded['data'][0]['email']));
+ box.write(BoxName.emailDriver, (jsonDecoeded['data'][0]['email']));
box.write(
BoxName.nameDriver,
jsonDecoeded['data'][0]['first_name'] +
diff --git a/lib/controller/firebase/firbase_messge.dart b/lib/controller/firebase/firbase_messge.dart
index 91436c3..a1bbf0a 100755
--- a/lib/controller/firebase/firbase_messge.dart
+++ b/lib/controller/firebase/firbase_messge.dart
@@ -71,8 +71,7 @@ class FirebaseMessagesController extends GetxController {
Future getToken() async {
fcmToken.getToken().then((token) {
// Log.print('token: ${token}');
- box.write(
- BoxName.tokenDriver, EncryptionHelper.instance.encryptData(token!));
+ box.write(BoxName.tokenDriver, (token!));
});
FirebaseMessaging.onMessage.listen((RemoteMessage message) {
@@ -409,8 +408,7 @@ class FirebaseMessagesController extends GetxController {
var encryptedKey = await storage.read(key: 'FCM_PRIVATE_KEY');
// Log.print('encryptedKey: ${encryptedKey}');
if (encryptedKey != null) {
- serviceAccountKeyJson =
- EncryptionHelper.instance.decryptData(encryptedKey);
+ serviceAccountKeyJson = (encryptedKey);
// Log.print('serviceAccountKeyJson: ${serviceAccountKeyJson}');
} else {
print('🔴 Error: FCM_PRIVATE_KEY not found in Secure Storage');
diff --git a/lib/controller/functions/crud.dart b/lib/controller/functions/crud.dart
index 5233940..b8c7678 100755
--- a/lib/controller/functions/crud.dart
+++ b/lib/controller/functions/crud.dart
@@ -66,12 +66,12 @@ class CRUD {
return 'token_expired'; // Return a specific value for token expiration
} else {
// Other 401 errors
- addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
+ // addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
return 'failure';
}
} else {
- addError('Non-200 response code: ${response.statusCode}',
- 'crud().post - Other');
+ // addError('Non-200 response code: ${response.statusCode}',
+ // 'crud().post - Other');
return 'failure';
}
}
@@ -96,7 +96,7 @@ class CRUD {
},
);
// print(response.request);
- // Log.print('response.request: ${response.request}');
+ // // Log.print('response.request: ${response.request}');
// Log.print('response.body: ${response.body}');
// print(payload);
if (response.statusCode == 200) {
@@ -117,12 +117,12 @@ class CRUD {
return 'token_expired'; // Return a specific value for token expiration
} else {
// Other 401 errors
- addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
+ // addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
return 'failure';
}
} else {
- addError('Non-200 response code: ${response.statusCode}',
- 'crud().post - Other');
+ // addError('Non-200 response code: ${response.statusCode}',
+ // 'crud().post - Other');
return 'failure';
}
}
@@ -157,7 +157,7 @@ class CRUD {
return jsonData['status'];
}
} catch (e) {
- addError(e.toString(), 'crud().post - JSON decoding');
+ // addError(e.toString(), 'crud().post - JSON decoding');
return 'failure';
}
} else if (response.statusCode == 401) {
@@ -168,16 +168,16 @@ class CRUD {
return 'token_expired'; // Return a specific value for token expiration
} else {
// Other 401 errors
- addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
+ // addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
return 'failure';
}
} else {
- addError('Non-200 response code: ${response.statusCode}',
- 'crud().post - Other');
+ // addError('Non-200 response code: ${response.statusCode}',
+ // 'crud().post - Other');
return 'failure';
}
} catch (e) {
- addError('HTTP request error: $e', 'crud().post - HTTP');
+ // addError('HTTP request error: $e', 'crud().post - HTTP');
return 'failure';
}
}
@@ -215,7 +215,7 @@ class CRUD {
return jsonData['status'];
}
} catch (e) {
- addError(e.toString(), url);
+ // addError(e.toString(), url);
return 'failure';
}
} else if (response.statusCode == 401) {
@@ -238,16 +238,16 @@ class CRUD {
return 'token_expired'; // Return a specific value for token expiration
} else {
// Other 401 errors
- addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
+ // addError('Unauthorized: ${jsonData['error']}', 'crud().post - 401');
return 'failure';
}
} else {
- addError('Non-200 response code: ${response.statusCode}',
- 'crud().post - Other');
+ // addError('Non-200 response code: ${response.statusCode}',
+ // 'crud().post - Other');
return 'failure';
}
} catch (e) {
- addError('HTTP request error: $e', 'crud().post - HTTP');
+ // addError('HTTP request error: $e', 'crud().post - HTTP');
return 'failure';
}
}
diff --git a/lib/controller/functions/face_detect.dart b/lib/controller/functions/face_detect.dart
index 777ec31..b0a805f 100755
--- a/lib/controller/functions/face_detect.dart
+++ b/lib/controller/functions/face_detect.dart
@@ -28,9 +28,9 @@ Future faceDetector() async {
request.body = json.encode({
"url1":
- "${AppLink.seferCairoServer}/card_image/id_front-${EncryptionHelper.instance.decryptData(box.read(BoxName.driverID))}.jpg",
+ "${AppLink.seferCairoServer}/card_image/id_front-${(box.read(BoxName.driverID))}.jpg",
"url2":
- "https://api.sefer.live/sefer/card_image/face_detect-${EncryptionHelper.instance.decryptData(box.read(BoxName.driverID))}.jpg"
+ "https://api.sefer.live/sefer/card_image/face_detect-${(box.read(BoxName.driverID))}.jpg"
});
print('request.body: ${request.body}');
request.headers.addAll(headers);
diff --git a/lib/controller/functions/gemeni.dart b/lib/controller/functions/gemeni.dart
index 5715239..21a6acc 100755
--- a/lib/controller/functions/gemeni.dart
+++ b/lib/controller/functions/gemeni.dart
@@ -1,7 +1,6 @@
import 'dart:async';
import 'dart:convert';
import 'dart:io';
-import 'dart:math';
import 'dart:convert';
import 'package:crypto/crypto.dart';
@@ -13,8 +12,6 @@ import 'package:sefer_driver/controller/auth/captin/login_captin_controller.dart
import 'package:sefer_driver/controller/firebase/firbase_messge.dart';
import 'package:sefer_driver/controller/firebase/local_notification.dart';
import 'package:sefer_driver/controller/functions/crud.dart';
-import 'package:sefer_driver/controller/functions/device_info.dart';
-import 'package:sefer_driver/controller/notification/notification_captain_controller.dart';
import 'package:sefer_driver/main.dart';
import 'package:sefer_driver/views/home/Captin/home_captain/home_captin.dart';
import 'package:sefer_driver/views/widgets/error_snakbar.dart';
@@ -397,16 +394,13 @@ class AI extends GetxController {
update();
var payload = {
- 'first_name': EncryptionHelper.instance.encryptData(
- responseNonIdCardFront['full_name'].toString().split(' ')[0]) ??
- 'Not specified',
- 'last_name': EncryptionHelper.instance.encryptData(
- responseNonIdCardFront['full_name'].toString().split(' ').last) ??
- 'Not specified',
- 'email': EncryptionHelper.instance
- .encryptData(box.read(BoxName.emailDriver))
- ?.toString() ??
- 'Not specified',
+ 'first_name':
+ (responseNonIdCardFront['full_name'].toString().split(' ')[0]) ??
+ 'Not specified',
+ 'last_name':
+ (responseNonIdCardFront['full_name'].toString().split(' ').last) ??
+ 'Not specified',
+ 'email': (box.read(BoxName.emailDriver))?.toString() ?? 'Not specified',
'phone': box.read(BoxName.phoneDriver)?.toString() ?? 'Not specified',
'id': box.read(BoxName.driverID)?.toString() ?? 'Not specified',
'password':
@@ -416,16 +410,13 @@ class AI extends GetxController {
.passwordController
.text
.toString(),
- 'gender': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['gender'].toString()) ??
- 'Not specified',
+ 'gender':
+ (responseNonIdCardFront['gender'].toString()) ?? 'Not specified',
'license_type': 'Foreign',
- 'national_number': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['passport_no'].toString()) ??
- 'Not specified',
- 'name_arabic': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['full_name'].toString()) ??
- 'Not specified',
+ 'national_number':
+ (responseNonIdCardFront['passport_no'].toString()) ?? 'Not specified',
+ 'name_arabic':
+ (responseNonIdCardFront['full_name'].toString()) ?? 'Not specified',
'name_english': 'Not specified',
'issue_date':
responseNonIdCardBack['issueDate']?.toString() ?? 'Not specified',
@@ -437,31 +428,23 @@ class AI extends GetxController {
? responseIdEgyptDriverLicense['license_categories'].join(', ')
: responseIdEgyptDriverLicense['license_categories']?.toString() ??
'Not specified',
- 'address': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['address'].toString()) ??
- 'Not specified',
- 'card_id': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['card_id'].toString()) ??
- 'Not specified',
- 'occupation': EncryptionHelper.instance
- .encryptData(responseNonIdCardBack['workStatus'].toString()) ??
- 'Not specified',
+ 'address':
+ (responseNonIdCardFront['address'].toString()) ?? 'Not specified',
+ 'card_id':
+ (responseNonIdCardFront['card_id'].toString()) ?? 'Not specified',
+ 'occupation':
+ (responseNonIdCardBack['workStatus'].toString()) ?? 'Not specified',
'education': 'Not specified',
'licenseIssueDate':
responseNonIdCardBack['issueDate']?.toString() ?? 'Not specified',
- 'religion': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['country'].toString()) ??
- 'Not specified',
+ 'religion':
+ (responseNonIdCardFront['country'].toString()) ?? 'Not specified',
'status': 'yet',
- 'birthdate': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['birthdate'].toString()) ??
- 'Not specified',
+ 'birthdate':
+ (responseNonIdCardFront['birthdate'].toString()) ?? 'Not specified',
'maritalStatus': 'Not specified',
- 'site': EncryptionHelper.instance
- .encryptData(responseNonIdCardFront['address'].toString()) ??
- 'Not specified',
- 'employmentType': EncryptionHelper.instance
- .encryptData(responseNonIdCardBack['residencyType'].toString()) ??
+ 'site': (responseNonIdCardFront['address'].toString()) ?? 'Not specified',
+ 'employmentType': (responseNonIdCardBack['residencyType'].toString()) ??
'Not specified',
};
@@ -517,32 +500,22 @@ class AI extends GetxController {
String hashedPassword = shortHash(pass);
var payload = {
- 'first_name': EncryptionHelper.instance.encryptData(
- responseIdEgyptDriverLicense['firstName'].toString()) ??
+ 'first_name': (responseIdEgyptDriverLicense['firstName'].toString()) ??
'Not specified',
- 'last_name': EncryptionHelper.instance.encryptData(
- responseIdEgyptDriverLicense['lastName'].toString()) ??
- 'Not specified',
- 'email': EncryptionHelper.instance
- .encryptData(box.read(BoxName.emailDriver))
- .toString() ??
+ 'last_name': (responseIdEgyptDriverLicense['lastName'].toString()) ??
'Not specified',
+ 'email': (box.read(BoxName.emailDriver)).toString() ?? 'Not specified',
'phone': box.read(BoxName.phoneDriver)?.toString() ?? 'Not specified',
'id': box.read(BoxName.driverID)?.toString() ?? 'Not specified',
'password': hashedPassword.toString(),
- 'gender': EncryptionHelper.instance
- .encryptData(responseIdEgyptBack['gender'].toString()) ??
- 'Not specified',
- 'license_type': EncryptionHelper.instance.encryptData(
- responseIdEgyptDriverLicense['license_type'].toString()) ??
- 'Not specified',
- 'national_number': EncryptionHelper.instance
- .encryptData(responseIdEgyptBack['nationalID'].toString()) ??
- 'Not specified',
- 'name_arabic': EncryptionHelper.instance
- .encryptData(responseIdEgyptDriverLicense['name_arabic'].toString()),
- 'name_english': EncryptionHelper.instance
- .encryptData(responseIdEgyptDriverLicense['name_english'].toString()),
+ 'gender': (responseIdEgyptBack['gender'].toString()) ?? 'Not specified',
+ 'license_type':
+ (responseIdEgyptDriverLicense['license_type'].toString()) ??
+ 'Not specified',
+ 'national_number':
+ (responseIdEgyptBack['nationalID'].toString()) ?? 'Not specified',
+ 'name_arabic': (responseIdEgyptDriverLicense['name_arabic'].toString()),
+ 'name_english': (responseIdEgyptDriverLicense['name_english'].toString()),
'issue_date': responseIdEgyptDriverLicense['issue_date']?.toString() ??
'Not specified',
'expiry_date': responseIdEgyptDriverLicense['expiry_date']?.toString() ??
@@ -552,36 +525,29 @@ class AI extends GetxController {
? responseIdEgyptDriverLicense['license_categories'].join(', ')
: responseIdEgyptDriverLicense['license_categories']?.toString() ??
'Not specified',
- 'address': EncryptionHelper.instance
- .encryptData(responseIdEgyptFront['address'].toString()) ??
- 'Not specified',
- 'card_id': EncryptionHelper.instance
- .encryptData(responseIdEgyptFront['card_id'].toString()) ??
- 'Not specified',
- 'occupation': EncryptionHelper.instance
- .encryptData(responseIdEgyptBack['occupation'].toString()) ??
- 'Not specified',
- 'education': EncryptionHelper.instance
- .encryptData(responseIdEgyptBack['occupation'].toString()) ??
- 'Not specified',
+ 'address':
+ (responseIdEgyptFront['address'].toString()) ?? 'Not specified',
+ 'card_id':
+ (responseIdEgyptFront['card_id'].toString()) ?? 'Not specified',
+ 'occupation':
+ (responseIdEgyptBack['occupation'].toString()) ?? 'Not specified',
+ 'education':
+ (responseIdEgyptBack['occupation'].toString()) ?? 'Not specified',
'licenseIssueDate':
responseIdEgyptDriverLicense['issue_date'].toString() ??
'Not specified',
- 'religion': EncryptionHelper.instance
- .encryptData(responseIdEgyptBack['religion'].toString()) ??
- 'Not specified',
+ 'religion':
+ (responseIdEgyptBack['religion'].toString()) ?? 'Not specified',
'status': 'yet',
- 'birthdate': EncryptionHelper.instance.encryptData(extractDOB(
+ 'birthdate': (extractDOB(
responseIdEgyptDriverLicense['national_number'].toString())),
- 'maritalStatus': EncryptionHelper.instance
- .encryptData(responseIdEgyptBack['maritalStatus'].toString()) ??
- 'Not specified',
- 'site': EncryptionHelper.instance.encryptData(
- responseIdEgyptDriverLicense['address'].toString()) ??
- 'Not specified',
- 'employmentType': EncryptionHelper.instance.encryptData(
- responseIdEgyptDriverLicense['employmentType'].toString()) ??
+ 'maritalStatus':
+ (responseIdEgyptBack['maritalStatus'].toString()) ?? 'Not specified',
+ 'site': (responseIdEgyptDriverLicense['address'].toString()) ??
'Not specified',
+ 'employmentType':
+ (responseIdEgyptDriverLicense['employmentType'].toString()) ??
+ 'Not specified',
};
try {
@@ -624,8 +590,7 @@ class AI extends GetxController {
var res = await CRUD().post(link: AppLink.addCriminalDocuments, payload: {
"driverId": box.read(BoxName.driverID),
"IssueDate": responseCriminalRecordEgypt['IssueDate'],
- "InspectionResult": EncryptionHelper.instance
- .encryptData(responseCriminalRecordEgypt['InspectionResult']),
+ "InspectionResult": (responseCriminalRecordEgypt['InspectionResult']),
});
if (res != 'failure') {
mySnackbarSuccess('uploaded sucssefuly'.tr);
@@ -639,19 +604,16 @@ class AI extends GetxController {
var res = await CRUD().post(link: AppLink.addRegisrationCar, payload: {
'driverID': box.read(BoxName.driverID),
'vin': responseIdCardDriverEgyptBack['chassis'].toString(),
- 'car_plate': EncryptionHelper.instance.encryptData(
- responseIdCardDriverEgyptFront['car_plate'].toString()),
+ 'car_plate': (responseIdCardDriverEgyptFront['car_plate'].toString()),
'make': (responseIdCardDriverEgyptBack['make'].toString()),
'model': (responseIdCardDriverEgyptBack['model']),
'year': responseIdCardDriverEgyptBack['year'].toString(),
'expiration_date':
responseIdCardDriverEgyptFront['LicenseExpirationDate'].toString(),
'color': responseIdCardDriverEgyptBack['color'],
- 'owner': EncryptionHelper.instance
- .encryptData(responseIdCardDriverEgyptFront['owner']),
+ 'owner': (responseIdCardDriverEgyptFront['owner']),
'color_hex': responseIdCardDriverEgyptBack['color_hex'].toString(),
- 'address': EncryptionHelper.instance
- .encryptData(responseIdCardDriverEgyptFront['address'].toString()),
+ 'address': (responseIdCardDriverEgyptFront['address'].toString()),
'displacement': responseIdCardDriverEgyptBack['engine'].toString(),
'fuel': responseIdCardDriverEgyptBack['fuel'].toString(),
'registration_date':
@@ -669,8 +631,8 @@ class AI extends GetxController {
payload: {
'driverID': box.read(BoxName.driverID),
'vin': responseIdCardDriverEgyptBack['chassis'].toString(),
- 'car_plate': EncryptionHelper.instance.encryptData(
- responseIdCardDriverEgyptFront['car_plate'].toString()),
+ 'car_plate':
+ (responseIdCardDriverEgyptFront['car_plate'].toString()),
'make': (responseIdCardDriverEgyptBack['make'].toString()),
'model': (responseIdCardDriverEgyptBack['model']),
'year': responseIdCardDriverEgyptBack['year'].toString(),
@@ -678,12 +640,10 @@ class AI extends GetxController {
responseIdCardDriverEgyptFront['LicenseExpirationDate']
.toString(),
'color': responseIdCardDriverEgyptBack['color'],
- 'owner': EncryptionHelper.instance
- .encryptData(responseIdCardDriverEgyptFront['owner']),
+ 'owner': (responseIdCardDriverEgyptFront['owner']),
'color_hex':
responseIdCardDriverEgyptBack['color_hex'].toString(),
- 'address': EncryptionHelper.instance.encryptData(
- responseIdCardDriverEgyptFront['address'].toString()),
+ 'address': (responseIdCardDriverEgyptFront['address'].toString()),
'displacement':
responseIdCardDriverEgyptBack['engine'].toString(),
'fuel': responseIdCardDriverEgyptBack['fuel'].toString(),
@@ -695,8 +655,8 @@ class AI extends GetxController {
payload: {
'driverID': box.read(BoxName.driverID),
'vin': responseIdCardDriverEgyptBack['chassis'].toString(),
- 'car_plate': EncryptionHelper.instance.encryptData(
- responseIdCardDriverEgyptFront['car_plate'].toString()),
+ 'car_plate':
+ (responseIdCardDriverEgyptFront['car_plate'].toString()),
'make': (responseIdCardDriverEgyptBack['make'].toString()),
'model': (responseIdCardDriverEgyptBack['model']),
'year': responseIdCardDriverEgyptBack['year'].toString(),
@@ -704,12 +664,10 @@ class AI extends GetxController {
responseIdCardDriverEgyptFront['LicenseExpirationDate']
.toString(),
'color': responseIdCardDriverEgyptBack['color'],
- 'owner': EncryptionHelper.instance
- .encryptData(responseIdCardDriverEgyptFront['owner']),
+ 'owner': (responseIdCardDriverEgyptFront['owner']),
'color_hex':
responseIdCardDriverEgyptBack['color_hex'].toString(),
- 'address': EncryptionHelper.instance.encryptData(
- responseIdCardDriverEgyptFront['address'].toString()),
+ 'address': (responseIdCardDriverEgyptFront['address'].toString()),
'displacement':
responseIdCardDriverEgyptBack['engine'].toString(),
'fuel': responseIdCardDriverEgyptBack['fuel'].toString(),
diff --git a/lib/controller/functions/location_controller.dart b/lib/controller/functions/location_controller.dart
index c4e45db..5179fb3 100755
--- a/lib/controller/functions/location_controller.dart
+++ b/lib/controller/functions/location_controller.dart
@@ -1,4 +1,5 @@
import 'dart:async';
+import 'dart:math';
import 'package:get/get.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
@@ -7,7 +8,6 @@ import 'package:location/location.dart';
import '../../constant/box_name.dart';
import '../../constant/links.dart';
import '../../main.dart';
-import '../../print.dart';
import '../home/captin/home_captain_controller.dart';
import '../home/payment/captain_wallet_controller.dart';
import 'crud.dart';
@@ -18,64 +18,37 @@ class LocationController extends GetxController {
late Location location = Location();
bool isLoading = false;
late double heading = 0;
- late double accuracy = 0;
late double previousTime = 0;
late double latitude;
late double totalDistance = 0;
late double longitude;
late DateTime time;
late double speed = 0;
- late double speedAccuracy = 0;
- late double headingAccuracy = 0;
bool isActive = false;
- late LatLng myLocation = LatLng(0, 0); // Default value
+ late LatLng myLocation = LatLng(0, 0);
String totalPoints = '0';
LocationData? get currentLocation => _currentLocation;
Timer? _locationTimer;
+ LatLng? _lastSavedPosition;
+
@override
void onInit() async {
super.onInit();
- location = Location(); // Initialize the location object
+ location = Location();
await location.changeSettings(
- accuracy: LocationAccuracy.high,
- interval: 5000, // 5 seconds
- distanceFilter: 0);
- await getLocation(); // Fetch the location immediately
- await startLocationUpdates(); // Start periodic location updates
+ accuracy: LocationAccuracy.high, interval: 5000, distanceFilter: 0);
+ await getLocation();
+ await startLocationUpdates();
totalPoints = Get.put(CaptainWalletController()).totalPoints.toString();
isActive = Get.put(HomeCaptainController()).isActive;
}
- // String getLocationArea(double latitude, double longitude) {
- // if (latitude >= 29.918901 &&
- // latitude <= 30.198857 &&
- // longitude >= 31.215009 &&
- // longitude <= 31.532186) {
- // return 'Cairo';
- // } else if (latitude >= 29.904975 &&
- // latitude <= 30.143372 &&
- // longitude >= 30.787030 &&
- // longitude <= 31.215009) {
- // return 'Giza';
- // } else if (latitude >= 30.396286 &&
- // latitude <= 31.654458 &&
- // longitude >= 29.041139 &&
- // longitude <= 32.626259) {
- // return 'Alexandria';
- // } else {
- // return 'Cairo';
- // }
- // }
String getLocationArea(double latitude, double longitude) {
final locations = box.read(BoxName.locationName) ?? [];
for (final location in locations) {
final locationData = location as Map;
-
- // Debugging: Print location data
-
- // Convert string values to double
final minLatitude =
double.tryParse(locationData['min_latitude'].toString()) ?? 0.0;
final maxLatitude =
@@ -85,21 +58,15 @@ class LocationController extends GetxController {
final maxLongitude =
double.tryParse(locationData['max_longitude'].toString()) ?? 0.0;
- // Debugging: Print converted values
- // 'Converted Values: minLatitude=$minLatitude, maxLatitude=$maxLatitude, minLongitude=$minLongitude, maxLongitude=$maxLongitude');
-
if (latitude >= minLatitude &&
latitude <= maxLatitude &&
longitude >= minLongitude &&
longitude <= maxLongitude) {
- box.write(BoxName.serverChosen,
- EncryptionHelper.instance.decryptData(locationData['server_link']));
- // 'locationData----server_link: ${locationData['server_link']}');
+ box.write(BoxName.serverChosen, (locationData['server_link']));
return locationData['name'];
}
}
- // Default case
box.write(BoxName.serverChosen, AppLink.seferCairoServer);
return 'Cairo';
}
@@ -108,10 +75,6 @@ class LocationController extends GetxController {
Future startLocationUpdates() async {
if (box.read(BoxName.driverID) != null) {
- if (location == null) {
- location = Location(); // Ensure location is initialized
- }
-
_locationTimer =
Timer.periodic(const Duration(seconds: 5), (timer) async {
try {
@@ -121,7 +84,7 @@ class LocationController extends GetxController {
if (isActive && double.parse(totalPoints) > -300) {
await getLocation();
- if (myLocation == null) return;
+ if (myLocation.latitude == 0 && myLocation.longitude == 0) return;
String area =
getLocationArea(myLocation.latitude, myLocation.longitude);
@@ -132,22 +95,35 @@ class LocationController extends GetxController {
'longitude': myLocation.longitude.toString(),
'heading': heading.toString(),
'speed': (speed * 3.6).toStringAsFixed(1),
- 'distance': totalDistance == 0 && (speed * 3.6) < 5
- ? '0.0'
- : totalDistance < 7
- ? totalDistance.toStringAsFixed(3)
- : totalDistance.toStringAsFixed(1),
+ 'distance': totalDistance.toStringAsFixed(2),
'status': box.read(BoxName.statusDriverLocation) ?? 'off',
};
- // 🔁 كل 5 ثواني - تحديث الموقع
+ // ✅ تحديث للسيرفر
await CRUD().post(
link:
box.read(BoxName.serverChosen) + '/ride/location/update.php',
payload: payload,
);
- // 📍 كل 60 ثانية - إدخال جديد
+ // ✅ تخزين في SQLite فقط إذا الرحلة On + تحرك أكثر من 10 متر
+ if ((box.read(BoxName.statusDriverLocation) ?? 'off') == 'on') {
+ if (_lastSavedPosition == null ||
+ _calculateDistanceInMeters(_lastSavedPosition!, myLocation) >=
+ 10) {
+ await sql.insertData({
+ 'driver_id': box.read(BoxName.driverID).toString(),
+ 'latitude': myLocation.latitude,
+ 'longitude': myLocation.longitude,
+ 'created_at': DateTime.now().toIso8601String(),
+ 'updated_at': DateTime.now().toIso8601String(),
+ }, 'car_locations');
+
+ _lastSavedPosition = myLocation;
+ }
+ }
+
+ // ✅ إدخال للسيرفر كل دقيقة
_insertCounter++;
if (_insertCounter >= 12) {
_insertCounter = 0;
@@ -157,14 +133,14 @@ class LocationController extends GetxController {
);
}
- // 🔄 تحديث الكاميرا
+ // ✅ تحديث الكاميرا
Get.find()
.mapHomeCaptainController
?.animateCamera(
CameraUpdate.newLatLng(
LatLng(
- Get.find().myLocation.latitude,
- Get.find().myLocation.longitude,
+ myLocation.latitude,
+ myLocation.longitude,
),
),
);
@@ -181,30 +157,18 @@ class LocationController extends GetxController {
}
Future getLocation() async {
- if (location == null) {
- location = Location(); // تأكد من أن `Location` مهيأ
- }
-
- bool serviceEnabled;
- PermissionStatus permissionGranted;
-
- serviceEnabled = await location.serviceEnabled();
+ bool serviceEnabled = await location.serviceEnabled();
if (!serviceEnabled) {
serviceEnabled = await location.requestService();
- if (!serviceEnabled) {
- return;
- }
+ if (!serviceEnabled) return;
}
- permissionGranted = await location.hasPermission();
+ PermissionStatus permissionGranted = await location.hasPermission();
if (permissionGranted == PermissionStatus.denied) {
permissionGranted = await location.requestPermission();
- if (permissionGranted != PermissionStatus.granted) {
- return;
- }
+ if (permissionGranted != PermissionStatus.granted) return;
}
- /// **تجنب استدعاء `getLocation()` مباشرة على الـ Main Thread**
Future.delayed(Duration(milliseconds: 500), () async {
try {
LocationData _locationData = await location.getLocation();
@@ -212,80 +176,27 @@ class LocationController extends GetxController {
myLocation =
LatLng(_locationData.latitude!, _locationData.longitude!);
} else {
- myLocation = LatLng(0, 0); // Default value
+ myLocation = LatLng(0, 0);
}
speed = _locationData.speed ?? 0;
heading = _locationData.heading ?? 0;
- if (Get.find().rideId == 'rideId') {
- if (previousTime > 0) {
- double distance = calculateDistanceInKmPerHour(
- previousTime, _locationData.time, speed);
- totalDistance += distance;
- }
- previousTime = _locationData.time ?? 0;
- }
-
update();
} catch (e) {
print("Error getting location: $e");
}
});
}
- // Future getLocation() async {
- // if (location == null) {
- // location = Location(); // Ensure location is initialized
- // }
- // bool serviceEnabled;
- // PermissionStatus permissionGranted;
-
- // serviceEnabled = await location.serviceEnabled();
- // if (!serviceEnabled) {
- // serviceEnabled = await location.requestService();
- // if (!serviceEnabled) {
- // return;
- // }
- // }
-
- // permissionGranted = await location.hasPermission();
- // if (permissionGranted == PermissionStatus.denied) {
- // permissionGranted = await location.requestPermission();
- // if (permissionGranted != PermissionStatus.granted) {
- // return;
- // }
- // }
-
- // LocationData _locationData = await location.getLocation();
- // if (_locationData.latitude != null && _locationData.longitude != null) {
- // myLocation = LatLng(_locationData.latitude!, _locationData.longitude!);
- // } else {
- // myLocation = LatLng(0, 0); // Default value
- // }
-
- // speed = _locationData.speed ?? 0;
- // heading = _locationData.heading ?? 0;
-
- // if (Get.find().rideId == 'rideId') {
- // if (previousTime > 0) {
- // double distance = calculateDistanceInKmPerHour(
- // previousTime, _locationData.time, speed);
- // totalDistance += distance;
- // }
- // previousTime = _locationData.time ?? 0;
- // }
-
- // update();
- // }
-
- double calculateDistanceInKmPerHour(
- double? startTime, double? endTime, double speedInMetersPerSecond) {
- double timeDifferenceInHours =
- (endTime ?? 0 - startTime! ?? 0) / 1000 / 3600;
- double speedInKmPerHour = speedInMetersPerSecond * 3.6;
- double distanceInKilometers = speedInKmPerHour * timeDifferenceInHours;
- double distanceInMeters = distanceInKilometers * 1000;
- return distanceInMeters < 5 ? 0 : distanceInKilometers;
+ double _calculateDistanceInMeters(LatLng start, LatLng end) {
+ const p = 0.017453292519943295;
+ final a = 0.5 -
+ cos((end.latitude - start.latitude) * p) / 2 +
+ cos(start.latitude * p) *
+ cos(end.latitude * p) *
+ (1 - cos((end.longitude - start.longitude) * p)) /
+ 2;
+ return 12742 * 1000 * asin(sqrt(a)); // meters
}
}
diff --git a/lib/controller/functions/log_out.dart b/lib/controller/functions/log_out.dart
index 661a8f6..ca286a2 100755
--- a/lib/controller/functions/log_out.dart
+++ b/lib/controller/functions/log_out.dart
@@ -75,9 +75,7 @@ class LogOutController extends GetxController {
confirm: MyElevatedButton(
title: 'Delete'.tr,
onPressed: () async {
- if (checkTxtController.text ==
- EncryptionHelper.instance
- .decryptData(box.read(BoxName.nameDriver))) {
+ if (checkTxtController.text == (box.read(BoxName.nameDriver))) {
// deletecaptainAccount();
var id = await checkBeforeDelete();
diff --git a/lib/controller/functions/package_info.dart b/lib/controller/functions/package_info.dart
index 6b70bd1..8595e69 100755
--- a/lib/controller/functions/package_info.dart
+++ b/lib/controller/functions/package_info.dart
@@ -197,8 +197,8 @@ class DeviceHelper {
// Generate and return the encrypted fingerprint
final String fingerprint = '${deviceId}_${deviceModel}_$osVersion';
- print(EncryptionHelper.instance.encryptData(fingerprint));
- return EncryptionHelper.instance.encryptData(fingerprint);
+ // print(EncryptionHelper.instance.encryptData(fingerprint));
+ return (fingerprint);
} catch (e) {
throw Exception('Failed to generate device fingerprint');
}
@@ -247,15 +247,15 @@ class SecurityHelper {
await box.write('isTampered', isTampered); // Use await
await box.write('isJailBroken', isJailBroken); // Use await
- // debugPrint("Security Check Results:");
- // debugPrint("isNotTrust: $isNotTrust");
- // debugPrint("isJailBroken: $isJailBroken");
- // debugPrint("isRealDevice: $isRealDevice");
- // debugPrint("isOnExternalStorage: $isOnExternalStorage");
- // debugPrint("checkForIssues: $checkForIssues");
- // debugPrint("isDevMode: $isDevMode");
- // debugPrint("isTampered: $isTampered");
- // debugPrint("Bundle ID: $bundleId"); // Print the bundle ID
+ debugPrint("Security Check Results:");
+ debugPrint("isNotTrust: $isNotTrust");
+ debugPrint("isJailBroken: $isJailBroken");
+ debugPrint("isRealDevice: $isRealDevice");
+ debugPrint("isOnExternalStorage: $isOnExternalStorage");
+ debugPrint("checkForIssues: $checkForIssues");
+ debugPrint("isDevMode: $isDevMode");
+ debugPrint("isTampered: $isTampered");
+ debugPrint("Bundle ID: $bundleId"); // Print the bundle ID
// Check for security risks and potentially show a warning
if (isJailBroken || isRealDevice == false || isTampered) {
diff --git a/lib/controller/functions/secure_storage.dart b/lib/controller/functions/secure_storage.dart
index 4bdaad1..9dd3b5c 100755
--- a/lib/controller/functions/secure_storage.dart
+++ b/lib/controller/functions/secure_storage.dart
@@ -40,6 +40,7 @@ class AppInitializer {
Future initializeApp() async {
if (box.read(BoxName.jwt) == null) {
+ Log.print('box.read(BoxName.jwt): ${box.read(BoxName.jwt)}');
await LoginDriverController().getJWT();
} else {
bool isTokenExpired = JwtDecoder.isExpired(X
@@ -74,16 +75,11 @@ class AppInitializer {
links = List