Hamza-Ayed and Claude Opus 5
852c6ece5c
Fix admin status handling for the current ride pipeline; extend console
...
The ride table holds two generations of status values: the legacy CamelCase
set ('Finished', 'CancelFromPassenger') and the lowercase set written by
backend/ride/rides/* today ('completed', 'cancelled_by_passenger'). Admin
queries only matched the legacy set, so on live data:
- get_rides_by_status.php returned nothing meaningful for every filter, and
the "in progress" default masked it.
- dashbord.php reported total_driver_earnings as NULL, completed_rides as a
fraction of the real count, and cancelled_rides as 0.
- driver_avg_duration averaged in negative durations, yielding "-00h 22m".
All three now match on LOWER(status) across both families.
Staff/pending.php ran with no authentication at all, exposing pending
admins' names and phone numbers to any caller; it now goes through
connect.php with a role check. It also returned HTTP 400 for everything when
the `users` table was absent — each source is queried independently and
reports its own availability.
Console:
- Render rides from either schema generation (price/date/time and
start_location coordinates, or the older address/created_at columns).
- Null aggregates render as "—" rather than a measured 0.00.
- Add tariff/promo, WhatsApp send and encryption modules, all super-admin
gated; pricing remains read-only.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-07-25 01:47:55 +03:00
Hamza-Ayed
10f1154cc7
Update adminUser fingerprint and fingerprint_hash in database upon successful OTP verification
2026-07-25 00:30:14 +03:00
Hamza-Ayed
9d2a665d64
Restore WhatsApp OTP (Nabeh API) flow for Admin authentication
2026-07-25 00:25:53 +03:00
Hamza-Ayed
4c738e8f43
Remove legacy encrypt_decrypt.php - bootstrap.php already provides encryptionHelper
2026-07-25 00:23:27 +03:00
Hamza-Ayed
032e1edda5
Remove broken providers.php require_once - issue JWT directly on valid password
2026-07-24 23:59:27 +03:00
Hamza-Ayed
1ca2c5a5dd
Fix require_once path in login.php using realpath
2026-07-24 23:51:28 +03:00
Hamza-Ayed
f115292dd2
Refactor login.php with decryption lookup for encrypted fields and restore Nabeh OTP integration
2026-07-24 23:48:57 +03:00
Hamza-Ayed
60e344598b
Fix Admin login path issue and issue direct JWT on valid credentials
2026-07-24 23:45:28 +03:00
Hamza-Ayed
8bc9290916
Safely initialize encryptionHelper and handle Throwable in Admin login.php
2026-07-24 23:42:39 +03:00
Hamza-Ayed
9e2964d307
Allow email and ID login in Admin auth login.php and bind web device fingerprint
2026-07-24 23:38:17 +03:00
Hamza-Ayed
474c212bcb
refactor: migrate amount fields to decimal and implement location service restriction for unsupported regions
2026-07-24 15:08:37 +03:00
Hamza-Ayed
e7629a9eb9
Update: 2026-07-23 22:14:10
2026-07-23 22:14:10 +03:00
Hamza-Ayed
695d6d7cb2
Update: 2026-07-23 21:18:25
2026-07-23 21:18:25 +03:00
Hamza-Ayed
e7aa28fe3d
Update: 2026-07-23 21:05:22
2026-07-23 21:05:22 +03:00
Hamza-Ayed
7d646b579b
Update: 2026-07-23 21:02:51
2026-07-23 21:02:51 +03:00
Hamza-Ayed
1e785061ec
Fix decryptData null type error and live analytics overflow
2026-07-23 20:42:48 +03:00
Hamza-Ayed
12e70f3d7e
Fix status warning in admin login
2026-07-23 20:34:27 +03:00
Hamza-Ayed
12a1cbc98c
Update: 2026-07-23 20:15:22
2026-07-23 20:15:22 +03:00
Hamza-Ayed
c35b350b31
Update: 2026-07-23 16:56:57
2026-07-23 16:56:58 +03:00
Hamza-Ayed
e5bf70fddb
Update: 2026-07-23 02:14:58
2026-07-23 02:14:58 +03:00
Hamza-Ayed
9e065e5a83
Update: 2026-07-23 00:16:56
2026-07-23 00:16:56 +03:00
Hamza-Ayed
ed8a93a6a3
Update: 2026-07-23 00:13:41
2026-07-23 00:13:41 +03:00
Hamza-Ayed
a7fa40dc31
Update: 2026-07-23 00:11:36
2026-07-23 00:11:37 +03:00
Hamza-Ayed
b86f95c90d
Update: 2026-07-22 23:27:18
2026-07-22 23:27:18 +03:00
Hamza-Ayed
b9efba3787
Update: 2026-07-22 18:32:11
2026-07-22 18:32:11 +03:00
Hamza-Ayed
55fbe22f8e
Update: 2026-07-22 18:23:10
2026-07-22 18:23:10 +03:00
Hamza-Ayed
f76623a25e
Update: 2026-07-22 18:20:33
2026-07-22 18:20:33 +03:00
Hamza-Ayed
f62716b510
Update: 2026-07-22 18:11:54
2026-07-22 18:11:54 +03:00
Hamza-Ayed
771b436c69
Update: 2026-07-22 17:58:19
2026-07-22 17:58:19 +03:00
Hamza-Ayed
939c7a9c2c
Update: 2026-07-22 17:49:27
2026-07-22 17:49:28 +03:00
Hamza-Ayed
ccbe3ab88d
Update: 2026-07-22 16:01:21
2026-07-22 16:01:21 +03:00
Hamza-Ayed
6282be37d8
Fix get.php key loading fallback
2026-07-22 04:03:37 +03:00
Hamza-Ayed
8ec0ac2942
Update: 2026-07-22 01:35:37
2026-07-22 01:35:37 +03:00
Hamza-Ayed
11d7d86b2f
Update: 2026-07-22 01:06:03
2026-07-22 01:06:03 +03:00
Hamza-Ayed
a4b5a2545c
Update: 2026-07-22 01:04:56
2026-07-22 01:04:57 +03:00
Hamza-Ayed
be14b2716e
Update: 2026-07-22 01:01:26
2026-07-22 01:01:26 +03:00
Hamza-Ayed
9a73f4303d
Update: 2026-07-22 00:55:45
2026-07-22 00:55:45 +03:00
Hamza-Ayed
bbcefd20cf
Update: 2026-07-22 00:52:19
2026-07-22 00:52:20 +03:00
Hamza-Ayed
521d76c4cf
Update: 2026-07-22 00:48:30
2026-07-22 00:48:30 +03:00
Hamza-Ayed
540e77984b
Update: 2026-07-22 00:44:11
2026-07-22 00:44:11 +03:00
Hamza-Ayed
bec8089fd1
Update: 2026-07-22 00:42:09
2026-07-22 00:42:09 +03:00
Hamza-Ayed
16101927e1
Update: 2026-07-22 00:39:28
2026-07-22 00:39:28 +03:00
Hamza-Ayed
58222fbf81
Update: 2026-07-22 00:37:03
2026-07-22 00:37:03 +03:00
Hamza-Ayed
bcab0ea221
Update: 2026-07-22 00:36:04
2026-07-22 00:36:05 +03:00
Hamza-Ayed
699b380f2b
Update: 2026-07-21 20:58:30
2026-07-21 20:58:30 +03:00
Hamza-Ayed
3d0c266b7a
Update: 2026-07-21 20:55:19
2026-07-21 20:55:20 +03:00
Hamza-Ayed
23f697b1c6
Update: 2026-07-21 19:43:50
2026-07-21 19:43:51 +03:00
Hamza-Ayed
1bec13634a
Update: 2026-07-21 19:34:29
2026-07-21 19:34:29 +03:00
Hamza-Ayed
0ee3655c05
Update: 2026-07-21 19:31:02
2026-07-21 19:31:02 +03:00
Hamza-Ayed
4f47c0ad1d
Update: 2026-07-21 19:28:08
2026-07-21 19:28:08 +03:00