<?php

/**
 * CORS.php - Configuración mejorada de CORS para desarrollo y producción
 * Incluye este archivo al inicio de api.php
 */

// Dominios permitidos para CORS
$allowedOrigins = [
  'http://localhost:5173',     // Vite dev server
  'http://localhost:3000',     // React dev server alternativo
  'http://127.0.0.1:5173',     // IP local
  'https://tudominio.com',     // Tu dominio en producción
  'https://www.tudominio.com' , // Versión www
  'http://192.168.2.127'
];

// Obtener el origin de la petición
$origin = $_SERVER['HTTP_ORIGIN'] ?? '';

// En desarrollo, permitir todos los origins
// En producción, cambiar esta lógica para ser más restrictivo
header("Access-Control-Allow-Origin: *");

// Headers CORS necesarios
header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With");
header("Access-Control-Allow-Credentials: true");
header("Access-Control-Max-Age: 86400"); // Cache preflight por 24 horas

// Manejar preflight requests
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
  http_response_code(200);
  exit();
}

// Headers de seguridad adicionales
header("X-Content-Type-Options: nosniff");
header("X-Frame-Options: DENY");
header("X-XSS-Protection: 1; mode=block");

// Content-Type JSON por defecto
header("Content-Type: application/json; charset=UTF-8");
