/**
 * Fonction servant à activer un nouvel utilisateur à l'aide de son code d'activation fourni dans l'url.
 * Si le code n'existe pas, il envoie un message d'erreur, sinon il active le membre et le redirige vers la page de connexion.
 */
function activationNewUser()
{
    $code = $_GET['code'];
    $am = new ActivationManager(connexionDb());
    $ac = $am->getActivationByCode($code);
    $noCode = false;
    if ($ac->getCode() == NULL) {
        $noCode = true;
    }
    if ($noCode) {
        echo "Votre code est incorrect, utilisez celui du mail prévu à cet effet !";
    } else {
        $am->deleteActivation($ac);
        echo "Vous êtes dorénavant activé, vous pouvez vous connecter normalement !";
        echo "<meta http-equiv='refresh' content='2; URL=connexion.page.php'>";
    }
}
/**
 * Si le user a rempli le formulaire de changement de mdp, la fonction regarde si le login correspond au user
 * possédant ce code d'activation et si cela est vrai, il change son mdp en bdd et delete son code d'activation en BDD
 */
function changementMdp()
{
    if (isset($_POST['userName']) && isset($_POST['mdp']) && $_POST['mdp'] == $_POST['verifmdp'] && goodCode()) {
        $code = $_GET['code'];
        $mdp = $_POST['mdp'];
        $userName = $_POST['userName'];
        $am = new ActivationManager(connexionDb());
        $ac = $am->getActivationByCodeAndLibelle("Récupération", $code);
        $userId = $ac->getIdUser();
        $um = new UserManager(connexionDb());
        /**
         * Je récupère cet user grâce à l'id du user possédant le code d'acti
         */
        $userRecup = $um->getUserById($userId);
        /**
         * Je récupère l'autre user grâce au login qu'il a encodé dans le formulaire
         */
        $userTest = $um->getUserByUserName($userName);
        /**
         * Je compare les deux users pour voir si ce sont les mêmes
         */
        if ($userTest->getUserName() != $userRecup->getUserName()) {
            echo "<section class='row'>";
            echo "<br><br><br><br><br><br><br><br><br><br><br><br><div class='alert alert-danger' role='alert'>Votre nom d'utilisateur ne correspond pas à l'utilisateur possédant ce code d'activation !</div>";
            echo "</section>";
        } else {
            $userRecup->setMdp($mdp);
            $am->deleteActivation($ac);
            $um->updateUserMdp($userRecup);
            echo "<br><br><br><br><br><br><br><br><br><br><br><br><div class='alert alert-success' role='success'>Votre mot de passe a bien été modifié, vous pouvez vous connecter !</div>";
            echo "<meta http-equiv='refresh' content='2; URL=connexion.page.php'>";
        }
    }
}