<?php
/**
 * SAC 2026 - TOGGLE MAINTENANCE MODE
 * Permite al programador activar/desactivar el modo mantenimiento global.
 */
require_once 'config.php';

// Solo el programador tiene potestad sobre el bloqueo de mantenimiento global
checkAccess(['programmer']);

$data = json_decode(file_get_contents("php://input"), true);

if (!isset($data['enabled'])) {
    response(["error" => "Parámetro 'enabled' requerido"], 400);
}

$status = $data['enabled'] ? 'true' : 'false';

try {
    $stmt = $pdo->prepare("INSERT INTO system_settings (setting_key, setting_value) 
                           VALUES ('system_maintenance_mode', ?) 
                           ON DUPLICATE KEY UPDATE setting_value = ?");
    $stmt->execute([$status, $status]);

    logSystemAction("Cambió MODO MANTENIMIENTO a: " . ($data['enabled'] ? 'ACTIVADO' : 'DESACTIVADO'), "SISTEMA");
    
    response(["success" => true, "maintenance_mode" => $data['enabled']]);

} catch (PDOException $e) {
    response(["error" => "Error al actualizar modo mantenimiento: " . $e->getMessage()], 500);
}
?>