<?php
session_start();
if (!isset($_SESSION['user_id']) || $_SESSION['role'] !== 'admin') {
    $_SESSION['error_message'] = 'No tienes permiso para realizar esta acción.';
    header('Location: info_producto.php');
    exit;
}

require_once 'db/config.php';

$id = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);

if (!$id) {
    header('Location: info_producto.php');
    exit;
}

$pdo = db();

try {
    $stmt = $pdo->prepare("DELETE FROM provincias WHERE id = ?");
    $stmt->execute([$id]);
    $_SESSION['success_message'] = 'Provincia eliminada con éxito.';
} catch (PDOException $e) {
    error_log("Error al eliminar provincia: " . $e->getMessage());
    // Check for foreign key constraint violation
    if ($e->getCode() == '23000') {
        $_SESSION['error_message'] = 'No se puede eliminar la provincia porque está asignada a uno o más productos.';
    } else {
        $_SESSION['error_message'] = 'Error en la base de datos al eliminar la provincia.';
    }
}

header('Location: info_producto.php');
exit;
