<?php
declare(strict_types=1);

require_once __DIR__ . '/../../conexion.php';
require_once __DIR__ . '/../../_helpers.php';
require_once __DIR__ . '/../../auth/guard.php';

$u = require_login();
require_admin($u);

$in = read_input();
$id = isset($in['id']) ? (int)$in['id'] : 0;

if ($id <= 0) {
  json_response(["ok" => false, "message" => "ID inválido."], 400);
}

try {
  // opcional: verificar existencia
  $chk = $pdo->prepare("SELECT COUNT(*) FROM sectorizacion WHERE id = ?");
  $chk->execute([$id]);
  if ((int)$chk->fetchColumn() === 0) {
    json_response(["ok" => false, "message" => "La sectorización no existe."], 404);
  }

  $stmt = $pdo->prepare("DELETE FROM sectorizacion WHERE id = ?");
  $stmt->execute([$id]);

  fp_log_activity($pdo, $u, 'Configuración', 'Eliminar sectorización', 'Se eliminó la sectorización ID ' . $id, 'sectorizacion', (string)$id);

  json_response(["ok" => true]);
} catch (Throwable $e) {
  if ($e instanceof PDOException) {
    $code = (int)($e->errorInfo[1] ?? 0);
    if ($code === 1451) {
      json_response(["ok" => false, "message" => "No se puede eliminar: la sectorización está en uso."], 409);
    }
  }

  error_log("SECTORIZACION DELETE ERROR: " . $e->getMessage());
  json_response(["ok" => false, "message" => "Error eliminando sectorización."], 500);
}
