<?php

require_once __DIR__ . '/../../conexion_bbdd/vendor/autoload.php';
require_once __DIR__ . '/../../conexion_bbdd/Config/Database.php';
require_once __DIR__ . '/../../Logger.php';

use Utils\Database_tesoreria;
use Utils\Logger;

// Permitir el acceso desde cualquier origen (para desarrollo)
header("Access-Control-Allow-Origin: *");

// Permitir métodos HTTP específicos
header("Access-Control-Allow-Methods: GET, POST, OPTIONS");

// Permitir encabezados personalizados
header("Access-Control-Allow-Headers: Content-Type, Authorization");

// Encabezado para tipo de contenido JSON
header("Content-Type: application/json");

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Sanitización básica de entradas
    $email = filter_var($_POST["email"], FILTER_SANITIZE_EMAIL);
    $password_ingresado = $_POST["password"];

    $pdo = Database_tesoreria::conectar_tesoreria();

    try {
        $query = "SELECT * FROM users WHERE username = :email LIMIT 1";
        $stmt = $pdo->prepare($query);
        $stmt->bindParam(':email', $email);
        $stmt->execute();

        $user = $stmt->fetch(PDO::FETCH_ASSOC);

        if ($user) {
            if ($password_ingresado === $user['password']) {
                $_SESSION["email"] = $email;
                header("Location: ../new_request.php");
                exit;
            } else {
                echo json_encode(["error" => "Contraseña incorrecta"]);
            }
        } else {
            echo json_encode(["error" => "Usuario no encontrado"]);
        }
    } catch(PDOException $e) {
        echo json_encode(["error" => "Error de conexión: " . $e->getMessage()]);
    }
}
?>