<?php
require_once 'config.php';

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

$data = json_decode(file_get_contents("php://input"), true);
$userId = $_SESSION['user_id'];

// 1. Obtener la propiedad del usuario
$stmtProp = $pdo->prepare("SELECT property_id FROM residents WHERE user_id = ? AND is_owner = 1 LIMIT 1");
$stmtProp->execute([$userId]);
$prop = $stmtProp->fetch();

if (!$prop) response(["error" => "Solo los propietarios pueden votar en Cartas Consulta."], 403);

$propertyId = $prop['property_id'];

try {
    // 2. Validar voto duplicado por propiedad
    $check = $pdo->prepare("SELECT id FROM poll_responses WHERE poll_id = ? AND property_id = ?");
    $check->execute([$data['pollId'], $propertyId]);
    if ($check->fetch()) response(["error" => "Su unidad inmobiliaria ya registró un voto para esta consulta."], 409);

    // 3. Registrar voto
    $stmt = $pdo->prepare("INSERT INTO poll_responses (poll_id, user_id, property_id, answers_json) VALUES (?, ?, ?, ?)");
    $stmt->execute([
        $data['pollId'],
        $userId,
        $propertyId,
        json_encode($data['answers'])
    ]);

    response(["success" => true]);
} catch (PDOException $e) {
    response(["error" => $e->getMessage()], 500);
}
?>