RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

# Redirect any APK download requests directly to download_app.php to avoid caching
RewriteRule ^download/.*\.apk$ /download_app.php [L,NC,R=302]

# Force HTTPS redirect
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# 1. CORS headers
<IfModule mod_headers.c>
    Header always set Access-Control-Allow-Origin "*"
    Header always set Access-Control-Allow-Methods "GET, POST, OPTIONS"
    Header always set Access-Control-Allow-Headers "Content-Type, Authorization, ar-origin, ar-real-ip"
    <FilesMatch "\.(html)$">
        Header always set Cache-Control "no-cache, no-store, must-revalidate, max-age=0"
        Header always set Pragma "no-cache"
        Header always set Expires "0"
    </FilesMatch>
</IfModule>

# Handle OPTIONS requests (preflight)
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^ - [R=200,L]

# Fallback: If an asset is requested at /assets/ but exists in support/assets/, serve it
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}/support/assets/$1 -f [OR]
RewriteCond %{REQUEST_URI} ^/assets/.*\.(css|js|png|jpg|jpeg|svg|ico)$ [NC]
RewriteRule ^assets/([^/]+\.(css|js|png|jpg|jpeg|svg|ico))$ support/assets/$1 [L]

# Clean URL rewrite for support APIs: /support/api/Category/Endpoint -> /support/api/Category/Endpoint.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^support/api/([^/]+)/([^/]+)$ support/api/$1/$2.php [L,QSA]


# Clean URL rewrite for /Teacherlara/api/webapi/Endpoint -> Teacherlara/api/webapi/Endpoint.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^Teacherlara/api/webapi/([^/]+)$ Teacherlara/api/webapi/$1.php [L,QSA]

# Clean URL rewrite for /api/webapi/Endpoint -> Teacherlara/api/webapi/Endpoint.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/webapi/([^/]+)$ Teacherlara/api/webapi/$1.php [L,QSA]

# 2. Rewrite special bet endpoints to their actual PHP filenames
RewriteRule ^api/Lottery/K3Bet$ Teacherlara/api/webapi/K3GameBetting.php [L,QSA]
RewriteRule ^api/Lottery/D5Bet$ Teacherlara/api/webapi/Game5DBetting.php [L,QSA]
RewriteRule ^api/Lottery/TrxWinGoBet$ Teacherlara/api/webapi/GameTRXBetting.php [L,QSA]
RewriteRule ^api/Lottery/WinGoBet$ Teacherlara/api/webapi/GameBetting.php [L,QSA]
RewriteRule ^api/Lottery/VideoWinGoBet$ Teacherlara/api/webapi/GameBetting.php [L,QSA]
RewriteRule ^api/Lottery/MotoRaceBet$ Teacherlara/api/webapi/MotoRaceBet.php [L,QSA]
RewriteRule ^api/Lottery/GetRecordPage$ Teacherlara/api/webapi/GetRecordPage.php [L,QSA]

# 3. Rewrite general lottery API requests to the webapi folder
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/Lottery/(.*)$ Teacherlara/api/webapi/$1.php [L,QSA]

# 4. Rewrite draw json requests to the centralized proxy
RewriteCond %{REQUEST_URI} ^/(WinGo|K3|D5|TrxWinGo|MotoRace)/ [NC]
RewriteRule ^(.*)$ draw_proxy.php?path=$1 [L,QSA]

# 5. Rewrite support Common and WorkOrder APIs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/Common/([^/]+)$ support/api/Common/$1.php [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/WorkOrder/([^/]+)$ support/api/WorkOrder/$1.php [L,QSA]

