RewriteEngine On
RewriteBase /api/

########################################
# 1️⃣ FORCE HTTPS BUT KEEP FULL PATH
########################################
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]


########################################
# 2️⃣ ALLOW DIRECT FILE OR FOLDER ACCESS
########################################
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]


########################################
# 3️⃣ AUTH ROUTES
########################################
RewriteRule ^auth/login/?$         admin/login.php [L,QSA]
RewriteRule ^auth/register/?$      admin/register.php [L,QSA]
RewriteRule ^auth/refresh/?$       admin/refresh.php [L,QSA]
RewriteRule ^auth/me/password/?$   admin/set-password.php [L,QSA]


########################################
# 4️⃣ ADMIN USERS
########################################
RewriteRule ^admin/users/?$                  admin/list.php [L,QSA]
RewriteRule ^admin/users/create/?$           admin/create.php [L,QSA]
RewriteRule ^admin/users/([0-9]+)/role/?$    admin/update-role.php?user_id=$1 [L,QSA]
RewriteRule ^admin/users/([0-9]+)/password/?$ admin/set-password.php?user_id=$1 [L,QSA]


########################################
# 5️⃣ BRANCHES
########################################
RewriteRule ^branches/?$                     branches/list.php [L,QSA]
RewriteRule ^branches/create/?$              branches/create.php [L,QSA]
RewriteRule ^branches/([0-9]+)/update/?$     branches/update.php?id=$1 [L,QSA]
RewriteRule ^branches/([0-9]+)/delete/?$     branches/delete.php?id=$1 [L,QSA]


########################################
# 6️⃣ TRIPS
########################################
RewriteRule ^trips/?$                     trips/list.php [L,QSA]
RewriteRule ^trips/create/?$              trips/create.php [L,QSA]
RewriteRule ^trips/([0-9]+)/update/?$     trips/update.php?id=$1 [L,QSA]
RewriteRule ^trips/([0-9]+)/delete/?$     trips/delete.php?id=$1 [L,QSA]


########################################
# 7️⃣ BOOKINGS
########################################
RewriteRule ^bookings/?$                    bookings/list.php [L,QSA]
RewriteRule ^bookings/book/?$               bookings/book.php [L,QSA]
RewriteRule ^bookings/verify-payment/?$     bookings/verify-payment.php [L,QSA]


########################################
# 8️⃣ DASHBOARD
########################################
RewriteRule ^dashboard/stats/?$    dashboard/stats.php [L,QSA]
RewriteRule ^dashboard/today/?$    dashboard/today.php [L,QSA]
RewriteRule ^dashboard/finance/?$  dashboard/finance.php [L,QSA]


########################################
# 9️⃣ SHIPMENTS — ADMIN
########################################

# LIST (FIXED!)
RewriteRule ^admin/shipments/?$                  shipments/list.php [L,QSA]

# SINGLE GET
RewriteRule ^admin/shipments/([A-Za-z0-9\-]+)$   shipments/get.php?id=$1 [L,QSA]

# UPDATE
RewriteRule ^admin/shipments/([A-Za-z0-9\-]+)/update$  shipments/update.php?id=$1 [L,QSA]

# DELETE
RewriteRule ^admin/shipments/([A-Za-z0-9\-]+)/delete$  shipments/delete.php?id=$1 [L,QSA]


########################################
# 🔟 SHIPMENTS — GENERAL
########################################
RewriteRule ^admin/shipments/create/?$              shipments/create.php [L,QSA]
RewriteRule ^admin/shipments/([0-9]+)$                 shipments/get.php?id=$1 [L,QSA]
RewriteRule ^admin/shipments/([0-9]+)/events/?$        shipments/add-event.php?shipment_id=$1 [L,QSA]
RewriteRule ^admin/shipments/([0-9]+)/status/?$        shipments/update-status.php?id=$1 [L,QSA]


########################################
# 🔟 EVENTS — GENERAL
########################################
RewriteRule ^admin/feedback/create/?$              feedbacks/create.php [L,QSA]
RewriteRule ^admin/feedback/([0-9]+)$                 feedbacks/get.php?id=$1 [L,QSA]
RewriteRule ^admin/feedback/([0-9]+)/status/?$       feedbacks/update-status.php?id=$1 [L,QSA]
RewriteRule ^admin/feedbacks/?$        feedbacks/list.php [L,QSA]


########################################
# 1️⃣1️⃣ PUBLIC TRACKING
########################################
RewriteRule ^public/track/([A-Za-z0-9\-]+)$ public/track.php?tracking=$1 [L,QSA]


