<?php
// Mostrar errores para depuración
error_reporting(E_ALL);
ini_set('display_errors', 1);

// Ruta absoluta usando DOCUMENT_ROOT
$ruta_base = $_SERVER['DOCUMENT_ROOT'] . '/iestp2026/jcastro/semana15/';

// Intentar incluir con ruta absoluta
if(file_exists($ruta_base . 'conexion.php')) {
    include($ruta_base . 'conexion.php');
} else {
    include('../conexion.php');
}

// Verificar conexión
if(!isset($conexion) || !$conexion) {
    die('Error de conexión a la base de datos');
}

$id = isset($_GET['id']) ? intval($_GET['id']) : 0;

if($id > 0) {
    // Verificar si la categoría existe
    $verificar_sql = "SELECT * FROM categoria WHERE id_categoria = $id";
    $verificar_result = mysqli_query($conexion, $verificar_sql);
    
    if(mysqli_num_rows($verificar_result) == 0) {
        header('Location: ../menu.php?page=categoria_listar&error=Categoría no encontrada');
        exit();
    }
    
    // Verificar si la categoría tiene productos asociados
    $check_sql = "SELECT COUNT(*) as total FROM producto WHERE id_categoria = $id";
    $check_result = mysqli_query($conexion, $check_sql);
    
    if($check_result) {
        $check_row = mysqli_fetch_assoc($check_result);
        if($check_row['total'] > 0) {
            header('Location: ../menu.php?page=categoria_listar&error=No se puede eliminar la categoría porque tiene ' . $check_row['total'] . ' producto(s) asociado(s)');
            exit();
        }
    }
    
    // Eliminar categoría
    $sql = "DELETE FROM categoria WHERE id_categoria = $id";
    
    if(mysqli_query($conexion, $sql)) {
        header('Location: ../menu.php?page=categoria_listar&mensaje=eliminado');
        exit();
    } else {
        header('Location: ../menu.php?page=categoria_listar&error=' . urlencode(mysqli_error($conexion)));
        exit();
    }
} else {
    header('Location: ../menu.php?page=categoria_listar&error=ID de categoría no válido');
    exit();
}
?>