# Site Builder .htaccess
# For life-tools.app/site-builder

# Enable rewrite engine
RewriteEngine On

# Set base
RewriteBase /site-builder/

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

# Prevent directory listing
Options -Indexes

# Protect config file
<Files "config.php">
    Order allow,deny
    Deny from all
</Files>

# Protect API files from direct access (except generate.php)
<FilesMatch "^(ContentGenerator|TemplateEngine|ImageFetcher|ZipBuilder)\.php$">
    Order allow,deny
    Deny from all
</FilesMatch>

# Set proper MIME types
<IfModule mod_mime.c>
    AddType application/javascript .js
    AddType text/css .css
    AddType application/json .json
</IfModule>

# Enable CORS for API
<IfModule mod_headers.c>
    <FilesMatch "\.php$">
        Header set Access-Control-Allow-Origin "*"
        Header set Access-Control-Allow-Methods "GET, POST, OPTIONS"
        Header set Access-Control-Allow-Headers "Content-Type"
    </FilesMatch>
</IfModule>

# Cache static assets
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType text/css "access plus 1 week"
    ExpiresByType application/javascript "access plus 1 week"
    ExpiresByType image/png "access plus 1 month"
    ExpiresByType image/jpeg "access plus 1 month"
</IfModule>

# Error pages
ErrorDocument 404 /site-builder/index.php
ErrorDocument 500 /site-builder/index.php
