summaryrefslogtreecommitdiff
path: root/Core/Functions/func_logout.php
blob: e1c28bf7cf9b23611af189a824bc88a1ab0fbf89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php

// ############################################################################
// #                                                                          #
// # Decription: Fonction pour se déconnecter                                 #
// #                                                                          #
// ############################################################################

function logout() {
    // On instancie les méthodes de gestion de la BDD.
    $dbuser = new DbUser;

    // On récupère la session
    session_start();
    // On conserve la langue qui était sélectionnée.
    $lang = $_SESSION["lang"];
    // On détruit la session.
    session_destroy();

    // On supprime le token d'auto-connection dans la BDD.
    $dbuser->del_token_autologin($_SESSION["email"]);
    // Et le cookie
    if (isset($_COOKIE["autoLogin"])) {
        unset($_COOKIE["autoLogin"]);
        setcookie("autoLogin", "", time() - 3600, "/");
    }

    // Et on en redémarre une nouvelle.
    session_start();
    $_SESSION["loggedIn"] = "0";
    $_SESSION["lang"] = $lang;

    // Enfin on redirige avec le bon message.
    $message = ["logout", "success"];
    $_SESSION["message"] = $message;
    header("Location: /Template/message.php");
    die();
}

?>