<?php
/**
 * Configuration de la base de données pour l'API Parking
 * TransUBD - Hai El Badr
 */

// Paramètres de connexion à la base de données cPanel
define('DB_HOST', 'localhost');
define('DB_NAME', 'transubd_GGR');  // Nom de la base de données
define('DB_USER', 'transubd_transub_user');      // Utilisateur cPanel
define('DB_PASS', 'Tr@nsub2@24');  // Mot de passe de la base

// Clé secrète pour l'API (doit correspondre à celle dans le VB.NET)
define('API_SECRET_KEY', 'votre_cle_secrete_super_longue_12345!@#');

// Configuration du fuseau horaire
date_default_timezone_set('Africa/Algiers');

// Fonction de connexion à la base de données
function getDBConnection() {
    try {
        $dsn = "mysql:host=" . DB_HOST . ";dbname=" . DB_NAME . ";charset=utf8mb4";
        $options = [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
            PDO::ATTR_EMULATE_PREPARES => false,
        ];
        $pdo = new PDO($dsn, DB_USER, DB_PASS, $options);
        return $pdo;
    } catch (PDOException $e) {
        // Retourner un message d'erreur détaillé pour le débogage
        error_log("Database Error: " . $e->getMessage());
        return null;
    }
}

// Fonction pour répondre en JSON
function jsonResponse($status, $message, $data = null) {
    header('Content-Type: application/json; charset=utf-8');
    echo json_encode([
        'status' => $status,
        'message' => $message,
        'data' => $data
    ], JSON_UNESCAPED_UNICODE);
    exit;
}

// Vérifier la clé API
function verifyAPIKey($apiKey) {
    return $apiKey === API_SECRET_KEY;
}
?>