<?php
$env = parse_ini_file(__DIR__ . '/../.env');
if ($env === false) { die('Impossible de charger le fichier .env');}

try {
    $bdd = new PDO(
        sprintf('mysql:host=%s;port=%s;dbname=%s;charset=%s', $env['DB_HOST'], $env['DB_PORT'], $env['DB_NAME'], $env['DB_CHARSET']),
        $env['DB_USER'], $env['DB_PASS'],
        [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
            PDO::ATTR_EMULATE_PREPARES => false,
        ]
    );
} catch (PDOException $e) {
    die('Erreur : ' . $e->getMessage());
}

define('VISITEUR',1);
define('INSCRIT',2);
define('MODO',3);
define('ADMIN',4);

define('ERR_IS_CO','Vous ne pouvez pas accéder à cette page si vous n\'êtes pas connecté');

session_start();

$lvl_session = isset($_SESSION['privilege_session']) ? (int)$_SESSION['privilege_session'] : 1;
$id_session = isset($_SESSION['id_session']) ? (int)$_SESSION['id_session'] : 0;
$pseudo_session = isset($_SESSION['pseudo_session']) ? $_SESSION['pseudo_session'] : '';

function verifierAcces($min_privilege_requis)
{
    if (!isset($_SESSION['id_session'])) {
        $message = "Vous devez être connecté pour accéder à cette page.";
        include 'erreur.php';
        exit();
    }
    $privilege_utilisateur = isset($_SESSION['privilege_session'])
        ? (int)$_SESSION['privilege_session']
        : VISITEUR;
    if ($privilege_utilisateur < $min_privilege_requis) {
        $message = "Vous n'avez pas les droits d'accès nécessaires pour accéder à cette page.";
        include 'erreur.php';
        exit();
    }
}

?>