<?php
session_start();  // Iniciar la sesión

include("../config/conexion.php");

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // Recibir los datos del formulario
    $fecha = $_POST['fecha'];
    $usuario = $_POST['usuario'];  // Suponiendo que 'usuario' es el coordinador
    $atendida = $_POST['atendido'];
    $carnet = $_POST['carnet'];
    $nombres = $_POST['nombres'];
    $carrera = $_POST['carrera'];
    $grado = $_POST['grado'];
    $seccion = $_POST['seccion'];
    $plan = $_POST['plan'];
    $comentario = $_POST['comentario']; // Nuevo campo de comentario

    // Comprobar si el coordinador ya tiene una cita asignada en la misma fecha y hora
    $sql_check = "SELECT COUNT(*) FROM cita WHERE usuario = ? AND fecha = ?";
    if ($stmt_check = $conexion->prepare($sql_check)) {
        $stmt_check->bind_param('ss', $usuario, $fecha);  // Enlazar parámetros: usuario y fecha
        $stmt_check->execute();  // Ejecutar la consulta
        $stmt_check->bind_result($count);  // Obtener el conteo
        $stmt_check->fetch();  // Obtener el valor
        $stmt_check->close();  // Cerrar la consulta

        // Si el coordinador ya tiene una cita en esa fecha y hora, redirigir con mensaje
        if ($count > 0) {
            // Guardar el mensaje de error en la sesión
            $_SESSION['error_message'] = 'El coordinador ya tiene una cita asignada en esa fecha y hora.';

            // Redirigir al formulario
            header("Location: ../iniciocita.php");
            exit();
        } else {
            // Si no existe una cita con esa fecha y usuario, proceder con la inserción
            $sql_insert = "INSERT INTO cita (fecha, usuario, atendida, carnet, nombres, carrera, grado, seccion, plan, comentario) 
                           VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";

            if ($stmt_insert = $conexion->prepare($sql_insert)) {
                // Vincular los parámetros, incluyendo el comentario
                $stmt_insert->bind_param('ssssssssss', $fecha, $usuario, $atendida, $carnet, $nombres, $carrera, $grado, $seccion, $plan, $comentario);

                // Ejecutar la inserción
                if ($stmt_insert->execute()) {
                    // Si la inserción es exitosa, redirigir sin mostrar mensaje
                    header("Location: ../iniciocita.php");
                    exit();
                } else {
                    // Si ocurre un error al insertar los datos
                    $_SESSION['error_message'] = 'Hubo un error al guardar la cita.';
                    header("Location: ../iniciocita.php");
                    exit();
                }
                $stmt_insert->close();  // Cerrar la consulta de inserción
            } else {
                // Si hay error al preparar la consulta de inserción
                $_SESSION['error_message'] = 'Error al preparar la consulta para guardar la cita.';
                header("Location: ../iniciocita.php");
                exit();
            }
        }
    } else {
        // Si hay error al preparar la consulta de validación
        $_SESSION['error_message'] = 'Error al preparar la consulta para verificar la disponibilidad.';
        header("Location: ../iniciocita.php");
        exit();
    }

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