<?php
// إخفاء التحذيرات الخاصة بالترويسات لمنع تشوه واجهة المستخدم
error_reporting(E_ALL & ~E_WARNING & ~E_NOTICE);

// التحقق مما إذا كانت الترويسات قد أُرسلت بالفعل
if (!headers_sent()) {
    
    // 1. تحديد نوع الملف الحالي (هل هو API أم صفحة عادية؟)
    $is_api_request = (strpos($_SERVER['REQUEST_URI'], 'api_') !== false || strpos($_SERVER['REQUEST_URI'], 'save_') !== false);

    // ==========================================
    // 🛡️ إعدادات الحماية لملفات الـ API
    // ==========================================
    if ($is_api_request) {
        $allowed_origin = "https://roozmari.com";
        $current_origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : '';

        // حماية CORS الصارمة
        if ($current_origin === $allowed_origin) {
            header("Access-Control-Allow-Origin: $allowed_origin");
            header("Access-Control-Allow-Methods: POST, GET, OPTIONS");
            header("Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With");
        } elseif ($current_origin !== '') {
            http_response_code(403);
            echo json_encode(['status' => 'error', 'message' => 'Forbidden Origin']);
            exit;
        }

        if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') { exit; }
    } 
    // ==========================================
    // 🛡️ إعدادات الحماية للصفحات العادية (Dashboards)
    // ==========================================
    else {
        header("X-Frame-Options: SAMEORIGIN");
        header("X-Content-Type-Options: nosniff");
        header("X-XSS-Protection: 1; mode=block");
        header("Strict-Transport-Security: max-age=31536000; includeSubDomains; preload");

        // سياسة المحتوى (CSP) المفصلة: تم إضافة مكتبات التصميم الشائعة والسماح للصور بالظهور
        $csp = "default-src 'self'; " .
               "script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdn.tailwindcss.com https://cdn.jsdelivr.net https://code.jquery.com https://cdnjs.cloudflare.com https://stackpath.bootstrapcdn.com https://source.zoom.us https://zoom.us https://*.zoom.us; " .
               "style-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com https://fonts.googleapis.com https://cdn.jsdelivr.net https://stackpath.bootstrapcdn.com https://unpkg.com; " .
               "font-src 'self' 'unsafe-inline' data: https://cdnjs.cloudflare.com https://fonts.gstatic.com https://ka-f.fontawesome.com; " .
               "connect-src 'self' wss: ws: blob: https://*.zoom.us https://zoom.us https://*.zoom.com wss://*.zoom.us wss://*.zoom.com https://ka-f.fontawesome.com; " .
               "img-src * data: blob:; " . 
               "worker-src 'self' blob:; " .
               "media-src *; " .
               "object-src 'none'; " .
               "frame-ancestors 'self';";
        
        header("Content-Security-Policy: " . $csp);
    }
}
?>