<?php
    // Début des sessions
    session_start();
    
    // Inclusion fichiers communs
    require_once('config-serveurs.php');
    require_once('config-generale.php');
    require_once('func-utils.php');
    
    // Réinitialisation des messages de session
    if ( !isset($_REQUEST["varsession"]) || $_REQUEST["varsession"]<>'sauve' ) msg_unset();
    
    // On regarde si l'utilisateur s'est authentifié
    if (isset($_POST["login"]) ) {$login=valid_data($_POST["login"]); } else $login='';
    if (isset($_POST["motdepasse"])) {$motdepasse=valid_data($_POST["motdepasse"]);} else $motdepasse='';  
    $message="";
    if (isset($_POST["valider_identification"]))
        {
                try{
                $dsn="mysql:host=".DBSERVER.";dbname=".DBNAME.";charset=".CHARSET;
                $pdo = new PDO($dsn, DBUSER, DBPASS);
                }
                catch(PDOException $e) {
                echo $e->getMessage();
                exit();
                }
            $requete = " SELECT u.id, u.id_structure, u.nom, u.prenom, u.login, u.motdepasse, u.email, u.role, ";
            $requete.= " s.id_groupe, s.raisonsociale ";
            $requete.= " FROM users u LEFT JOIN structures s ";
            $requete.= " ON u.id_structure = s.id ";
            $requete.= " WHERE u.login=? and u.motdepasse=? limit 1 ";
            $res=$pdo->prepare($requete);
            $res->setFetchMode(PDO::FETCH_ASSOC);
            $res->execute(array($login,fonction_hachage($motdepasse)));
            $tab=$res->fetchAll();
            $res->closeCursor();
            if (count($tab)==0) {$message="<li>Erreur identifiant ou mot de passe </li>";}
            else
            {
            $_SESSION["autorise"]="oui";
            $_SESSION["id_user"]=$tab[0]["id"];
            $_SESSION["login"]=$login;
            $_SESSION["nomprenom"]=ucfirst($tab[0]["prenom"])." ".strtoupper($tab[0]["nom"]);
            $_SESSION["role"]=$tab[0]["role"];
            // Id de la structure : EPN du médiateur ou structure de l'administrateur
            $_SESSION["id_structure"]=$tab[0]["id_structure"];
            // Nom de la structure
            $_SESSION["raisonsociale"]=$tab[0]["raisonsociale"];
            // Dans le cas d'EPN, groupe d'EPN éventuel auquel appartient cet EPN
            $_SESSION["id_groupe"]=$tab[0]["id_groupe"];
            
                $_SERVER['PHP_AUTH_USER']=$login;
                $_SERVER['PHP_AUTH_PW'] = $motdepasse;
             }    
        }
// Si l'utilisateur n'est pas identifié, on affiche la page de login
if (!isset($_SESSION["autorise"]) || $_SESSION["autorise"]!="oui"){
    include("login.php");
    exit();
}

// Si utilisateur connecté, on démarre
require_once('controllers/Router.php');
$router = new Router();
$router->routeReq();
