<?php
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type');

if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    exit(0);
}

require_once 'config.php';

try {
    // Récupérer les données POST
    $input = json_decode(file_get_contents('php://input'), true);
    $code_utilisateur = $input['code_utilisateur'] ?? '';
    $mot_de_passe = $input['mot_de_passe'] ?? '';

    if (empty($code_utilisateur) || empty($mot_de_passe)) {
        echo json_encode(["success" => false, "message" => "Identifiants manquants"]);
        exit();
    }

    // Vérifier les identifiants dans la table Utilisateurs
    $stmt = $pdo->prepare("SELECT * FROM Utilisateurs WHERE code_utilisateur = ? AND mot_de_passe = ? AND statut = 'ACTIF'");
    $stmt->execute([$code_utilisateur, $mot_de_passe]);
    $utilisateur = $stmt->fetch(PDO::FETCH_ASSOC);

    if ($utilisateur) {
        // Identifiants corrects
        echo json_encode([
            "success" => true,
            "message" => "Connexion réussie",
            "utilisateur" => [
                "code_utilisateur" => $utilisateur['code_utilisateur'],
                "nom" => $utilisateur['Nom'],
                "prenom" => $utilisateur['Prenom'],
                "nom_prenom" => $utilisateur['NomPrenom'],
                "site_id" => $utilisateur['SiteID'],
                "role" => $utilisateur['role'],
                "statut" => $utilisateur['statut'],
                "last_ticket_number" => $utilisateur['last_ticket_number']
            ]
        ]);
    } else {
        echo json_encode(["success" => false, "message" => "Identifiants incorrects ou compte bloqué"]);
    }
} catch (Exception $e) {
    error_log("Erreur login: " . $e->getMessage());
    echo json_encode([
        "success" => false,
        "message" => "Erreur serveur: " . $e->getMessage()
    ]);
}
?>
