<?php
// Incluye el archivo de conexión
include('modelo.php');
require_once 'config.php';

// Definir variables para errores y éxito
$error = ""; // Definir siempre la variable de error
$exito = ""; // Agregué una variable $exito para mensajes exitosos

// Si se envió el formulario
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Obtener los datos del formulario
    $titulo = $_POST['titulo'];
    $cuerpo = $_POST['cuerpo'];
    $categoria = $_POST['categoria'];
    $subcategoria = $_POST['subcategoria'];
    $imagen = null; // Por defecto no hay imagen

    // Verificar si se subió una imagen
    if (isset($_FILES['imagen']) && $_FILES['imagen']['error'] == 0) {
        // Guardar la imagen en una carpeta del servidor
        $directorioSubida = 'imagenes/';
        $nombreArchivo = basename($_FILES['imagen']['name']);
        $rutaArchivo = $directorioSubida . $nombreArchivo;

        // Intentar mover el archivo subido a la carpeta destino
        if (move_uploaded_file($_FILES['imagen']['tmp_name'], $rutaArchivo)) {
            $imagen = $rutaArchivo;
        } else {
            $error = "Error al subir la imagen.";
        }
    }

    // Verificar si no hubo errores antes de insertar en la base de datos
    if ($error == "") {
        // Preparar la consulta de inserción
        $query = "INSERT INTO noticias (titulo, cuerpo, categoria, subcategoria, imagen) VALUES (?, ?, ?, ?, ?)";
        
        // Definir los parámetros
        $parametros = [$titulo, $cuerpo, $categoria, $subcategoria, $imagen];

        // Ejecutar la consulta
        try {
            $conexion->ejecutarConsultaPreparada($query, $parametros);
            $exito = "Noticia subida con éxito.";
        } catch (Exception $e) {
            $error = "Error al insertar en la base de datos: " . $e->getMessage();
        }

        // Cerrar la conexión
        $conexion->cerrarConexion();
    }
}
?>

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Subir Noticia</title>
</head>
<body>
    <h2>Subir Noticia</h2>

    <?php if ($error): ?>
        <p style="color:red;"><?php echo $error; ?></p>
    <?php elseif ($exito): ?>
        <p style="color:green;"><?php echo $exito; ?></p>
    <?php endif; ?>

    <form action="subir_noticia.php" method="post" enctype="multipart/form-data">
        <label for="titulo">Título:</label><br>
        <input type="text" name="titulo" id="titulo" required><br><br>

        <label for="cuerpo">Cuerpo:</label><br>
        <textarea name="cuerpo" id="cuerpo" rows="5" required></textarea><br><br>

        <label for="categoria">Categoría:</label><br>
        <select name="categoria" id="categoria" required>
            <option value="">Seleccionar...</option>
            <option value="Profesional">Profesional</option>
            <option value="Productores">Productores</option>
            <option value="Normativa">Normativa</option>
        </select><br><br>

        <label for="subcategoria">Subcategoría:</label><br>
        <select name="subcategoria" id="subcategoria" required>
            <option value="">Seleccionar...</option>
            <option value="Subcategoria1">Subcategoría 1</option>
            <option value="Subcategoria2">Subcategoría 2</option>
            <option value="Subcategoria3">Subcategoría 3</option>
            <option value="Subcategoria4">Subcategoría 4</option>
        </select><br><br>

        <label for="imagen">Imagen (opcional):</label><br>
        <input type="file" name="imagen" id="imagen"><br><br>

        <input type="submit" value="Subir Noticia">
    </form>
</body>
</html>
