# SCMS Dynamic Router - Clean URLs Only
# Completely database-driven routing - no hardcoded module paths

# Prevent directory browsing
Options -Indexes

# Custom error pages
ErrorDocument 404 /sys/scms/404.php
ErrorDocument 403 /sys/scms/403.php

RewriteEngine On
RewriteBase /sys/scms/

# Clean URL routing: /m/{module}/{action} -> router.php
RewriteRule ^m/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ router.php?module=$1&action=$2 [L,QSA]

# Clean URL routing: /m/{module} (defaults to list action)
RewriteRule ^m/([a-zA-Z0-9_-]+)/?$ router.php?module=$1&action=list [L,QSA]

# Protect sensitive directories
RewriteRule ^(config|includes|install)/.*$ - [F,L]

# Protect module configuration and installation files
RewriteRule ^modules/([^/]+)/(module\.json|install\.php|install\.sql|uninstall\.php|activate\.php|deactivate\.php)$ - [F,L]

# Protect uploads directory from PHP execution
<FilesMatch "\.php$">
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_URI} ^/sys/scms/uploads/
        RewriteRule ^ - [F,L]
    </IfModule>
</FilesMatch>
