/**
 * Fonction ajoutant en BDD le nouveau membre inscrit et lui envoyant un message contenant son code d'activation
 * d'inscription.
 */
function addDB()
{
    $userToAdd = new User(array("UserName" => $_POST['userName'], "email" => $_POST['email'], "Mdp" => $_POST['mdp']));
    $code_aleatoire = genererCode();
    $adresseAdmin = "*****@*****.**";
    $to = $userToAdd->getEmail();
    $sujet = "Confirmation de l'inscription";
    $entete = "From:" . $adresseAdmin . "\r\n";
    $entete .= "Content-Type: text/html; charset=utf-8\r\n";
    $message = "Nous confirmons que vous êtes officiellement inscrit sur le site EveryDayIdea <br>\n\t\t\t\t\t\t\t\t\tVotre login est : " . $userToAdd->getUserName() . " <br>\n\t\t\t\t\t\t\t\t\tVotre email est : " . $userToAdd->getEmail() . " <br>\n\t\t\t\t\t\t\t\t\tVotre lien d'activation est : <a href='http://www.everydayidea.be/Page/activationInscription.page.php?code=" . $code_aleatoire . "'>Cliquez ici !</a>";
    mail($to, $sujet, $message, $entete);
    /** @var $um : un nouvel user qui va être ajouté à la BDD
        J'ajoute le nouvel user à la BDD*/
    $um = new UserManager(connexionDb());
    $um->addUser($userToAdd);
    /**
     * Ici j'ai besoin de savoir quel est le user id du nouveau membre ajouté pour pouvoir le mettre dans l'ajout du code d'activation de cet user
     * Donc je vais le rechercher en base de donnée où il vient d'être ajouté
     */
    $user = $um->getUserByUserName($userToAdd->getUserName());
    $userid = $user->getId();
    $um->setUserDroit($user, 4);
    /**
     * J'ajoute le nouveau code d'activation à la BDD
     */
    $am = new ActivationManager(connexionDb());
    $activation = new Activation(array("code" => $code_aleatoire, "id_user" => $userid, "libelle" => "Inscription"));
    $am->addActivation($activation);
}
/**
 * Si l'user envoie le formulaire pour recevoir un code, la fonction vérifie si son email existe et envoie
 * un mail contenant l'url contenant le code d'activation à cette adresse. La fonction ajoute aussi le code
 * à la BDD
 */
function envoiCode()
{
    if (isset($_POST['email']) && !empty($_POST['email'])) {
        $ini = getConfigFile();
        $email = $_POST['email'];
        $um = new UserManager(connexionDb());
        $userToSend = $um->getUserByEmail($email);
        $inconnu = false;
        if ($userToSend->getId() == NULL) {
            $inconnu = true;
        }
        if ($inconnu) {
            echo "<div class='alert alert-danger' role='alert'>Cet email n'est pas répertorié chez nous, désolé !</div>";
        } else {
            $code_aleatoire = genererCode();
            $adresseAdmin = $ini['ADMINISTRATEUR']['mail'];
            $to = $email;
            $sujet = "Confirmation de la demande du mot de passe";
            $entete = "From:" . $adresseAdmin . "\r\n";
            $entete .= "Content-Type: text/html; charset=utf-8\r\n";
            $message = "Nous confirmons que vous avez bien demandé un nouveau mot de passe : <br>\n\t\t\t\t\t\t\tVotre lien pour pouvoir le modifier est : <a href='http://www.everydayidea.be/Page/mdpOublie.page.php?code=" . $code_aleatoire . "'>www.everydayidea/mdpOublie.page.php?code=" . $code_aleatoire . "</a>";
            mail($to, $sujet, $message, $entete);
            echo "<div class='alert alert-success' role='alert'>Un mail vous a été envoyé avec un code d'activation pour le changement de votre mot de passe !</div>";
            $am = new ActivationManager(connexionDb());
            $ac = new Activation(array("code" => $code_aleatoire, "id_user" => $userToSend->getId(), "libelle" => "Récupération"));
            /**
             * Si le user possède déjà un code de récupération de mdp, je le delete pour lui en mettre un nouveau
             */
            $actDelete = $am->getActivationByLibelleAndId('Récupération', $userToSend->getId());
            if ($actDelete->getCode() == NULL) {
                $am->deleteActivationByIdAndLibelle($actDelete->getIdUser(), 'Récupération');
            }
            $am->addActivation($ac);
        }
    }
}
        }
        if ($validUserMail and $validUserName and $champValid and $return == "erreur.") {
            $mdp = hash("sha256", $mdp);
            $sql = "INSERT INTO user(userName, password, email) VALUES('" . $userName . "', '" . $mdp . "', '" . $email . "')";
            mysqli_query($con, $sql);
        }
    }
    echo $return;
}
$query = mysqli_query($con, "select * from user where userName='******'");
$row = mysqli_fetch_assoc($query);
$userId = $row['id'];
$userNameBdd = $row['userName'];
$passwordBdd = $row['password'];
$emailBdd = $row['email'];
$code_aleatoire = genererCode();
$adresseAdmin = "*****@*****.**";
$to = $email;
$sujet = "Confirmation de l'inscription";
$entete = "From:" . $adresseAdmin . "\r\n";
$message = "Nous confirmons que vous êtes officiellement inscrit sur le site EveryDayIdea <br>\n\t\t\t\t\t\t\t\t\tVotre login est : " . $userNameBdd . " <br>   \n\t\t\t\t\t\t\t\t\tVotre email est : " . $emailBdd . " <br>\n\t\t\t\t\t\t\t\t\tVotre lien d'activation est : <a href='www.everydayidea/activation.php?code=" . $code_aleatoire . "'>www.everydayidea/activation.php?code=" . $code_aleatoire . "</a>";
// mail($to, $sujet, $message, $entete);
//  echo "Votre inscription est dorénavant complète ! Un email vous a été envoyé avec vos informations et votre code d'activation !";
$sql = "INSERT INTO activation (id_user, code, date) VALUES('" . $userId . "', '" . $code_aleatoire . "', NOW())";
mysqli_query($con, $sql);
function nbUserByUsername($userName)
{
    $con = mysqli_connect(HOST, USER, PASS, DB);
    $query = "SELECT * FROM user WHERE userName ='******' ";
    if ($result = mysqli_query($con, $query)) {
        $nbResult = mysqli_num_rows($result);