<?php
// C:\xampp\htdocs\crud\login\log\reservas_empleados\update.php
require 'db.php';

// Solo procesar si llegó un POST con el botón update
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['update'])) {
    // ——————————————————————
    // 1. Sanitizar y validar
    // ——————————————————————
    $id            = isset($_POST['id'])            ? intval($_POST['id']) : 0;
    $nombre        = mysqli_real_escape_string($conn, $_POST['nombre']        ?? '');
    $apellido      = mysqli_real_escape_string($conn, $_POST['apellido']      ?? '');
    $telefono      = mysqli_real_escape_string($conn, $_POST['telefono']      ?? '');
    $habitacion    = mysqli_real_escape_string($conn, $_POST['habitacion']    ?? '');
    $fechaEntrada  = $_POST['fecha_entrada'] ?? '';
    $fechaSalida   = $_POST['fecha_salida']  ?? '';
    $precio        = isset($_POST['precio']) ? floatval($_POST['precio']) : 0.0;

    if ($id <= 0 || empty($nombre) || empty($apellido) || empty($telefono) || empty($habitacion) || empty($fechaEntrada) || empty($fechaSalida)) {
        header('Location: index.php?status=error&message=Datos incompletos o ID inválido.');
        exit;
    }

    // ——————————————————————
    // 2. Preparar sentencia segura
    // ——————————————————————
    $sql  = "UPDATE reservas_empleados SET 
                nombre = ?,
                apellido = ?,
                telefono = ?,
                habitacion = ?,
                fecha_entrada = ?,
                fecha_salida  = ?,
                precio = ?
              WHERE id = ?";

    $stmt = $conn->prepare($sql);
    if (!$stmt) {
        header('Location: index.php?status=error&message=Error al preparar consulta.');
        exit;
    }

    $stmt->bind_param("ssssssdi", $nombre, $apellido, $telefono, $habitacion, $fechaEntrada, $fechaSalida, $precio, $id);

    // ——————————————————————
    // 3. Ejecutar y redirigir
    // ——————————————————————
    if ($stmt->execute()) {
        header('Location: index.php?status=success&message=¡Reservación actualizada exitosamente!');
    } else {
        header('Location: index.php?status=error&message=Error al actualizar la reservación.');
    }

    $stmt->close();
    $conn->close();
    exit;
}

// Acceso directo sin POST
header('Location: index.php?status=error&message=Acceso no autorizado.');
exit;
?>
