<?php
/**
 * SAC 2026 - GUARDAR COMUNICADO ESPECIAL V1.0
 * Kernel V4.2.14 MC/MB
 */
require_once 'config.php';

if (!isset($_SESSION['user_id'])) {
    response(["error" => "No autorizado"], 401);
}

// Recibir JSON input
$input = json_decode(file_get_contents('php://input'), true);

if (!$input || empty($input['propertyCode']) || empty($input['title']) || empty($input['body'])) {
    response(["error" => "Parámetros insuficientes o inválidos para registrar el comunicado."], 400);
}

try {
    $sql = "INSERT INTO special_notices (
                propertyCode, 
                propertyNumber, 
                ownerName, 
                type, 
                title, 
                body, 
                palette, 
                tracking_code, 
                condo, 
                president, 
                secretary
            ) VALUES (
                :propertyCode, 
                :propertyNumber, 
                :ownerName, 
                :type, 
                :title, 
                :body, 
                :palette, 
                :tracking_code, 
                :condo, 
                :president, 
                :secretary
            )";

    $stmt = $pdo->prepare($sql);
    $stmt->execute([
        ':propertyCode' => $input['propertyCode'],
        ':propertyNumber' => $input['propertyNumber'] ?? '',
        ':ownerName' => $input['ownerName'] ?? 'Propietario / Residente',
        ':type' => $input['type'] ?? 'Queja',
        ':title' => $input['title'],
        ':body' => $input['body'],
        ':palette' => $input['palette'] ?? 'cream',
        ':tracking_code' => $input['tracking_code'] ?? '',
        ':condo' => $input['condo'] ?? 'C. R. EL TEJAR',
        ':president' => $input['president'] ?? 'CONSEJO DE ADMINISTRACIÓN',
        ':secretary' => $input['secretary'] ?? 'COMITÉ DE CONVIVENCIA'
    ]);

    $id = $pdo->lastInsertId();
    response([
        "success" => true, 
        "id" => (int)$id, 
        "message" => "Comunicado Especial registrado con éxito en base de datos."
    ]);

} catch (PDOException $e) {
    response(["error" => "Fallo de conexión o consulta de base de datos: " . $e->getMessage()], 500);
}
?>