<?php
// Habilitar CORS
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: GET, POST, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type, Authorization");

// Verifica si el nombre de la imagen se ha enviado
if (isset($_GET['image_name'])) {
    $imageName = $_GET['image_name'];

    $documentRoot = realpath(__DIR__ . '/../..');
    // Define la ruta al directorio de imágenes
    $directoryPath = $documentRoot . "/assets/cstimage/";

    $imagePath = $directoryPath . $imageName;

    //$imagePath = '/var/www/vhosts/cst.cat/subdomains/pefir/httpdocs/assets/cstimage/' . $imageName;

    // Verifica si el archivo existe
    if (file_exists($imagePath)) {
        // Obtén la extensión del archivo para configurar el Content-Type adecuado
        $fileExtension = strtolower(pathinfo($imagePath, PATHINFO_EXTENSION));

        switch ($fileExtension) {
            case 'jpg':
                $contentType = 'image/jpg';
                break;
            case 'jpeg':
                $contentType = 'image/jpeg';
                break;
            case 'png':
                $contentType = 'image/png';
                break;
            case 'gif':
                $contentType = 'image/gif';
                break;
            default:
                header('HTTP/1.0 400 Bad Request');
                echo 'Tipo de imagen no soportado.';
                exit;
        }

        // Establece los encabezados adecuados
        header('Content-Type: ' . $contentType);
        header('Content-Length: ' . filesize($imagePath));

        // Lee el archivo y envíalo al cliente
        readfile($imagePath);
        exit;
    } else {
        // Si el archivo no existe, muestra un mensaje de error
        header('HTTP/1.0 404 Not Found');
        echo 'Archivo no encontrado.';
    }
} else {
    // Si no se envió ningún nombre de imagen, muestra un mensaje de error
    header('HTTP/1.0 400 Bad Request');
    echo 'Nombre de imagen no especificado.';
}
?>