/** * 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); } } }
/** * 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); }