function create($userId, $methodId, $name, $password, $avatar, $lastName, $firstName, $mail) { if (strtoupper(get_ini('BDD_TYPE')) == 'ORACLE') { $s0 = get_link()->prepare('SELECT ' . get_ini('BDD_PREFIX') . 'CORE_USER_AUTHS_ID_SEQ.NEXTVAL AS ID FROM DUAL'); $s0->execute(); $id = $s0->fetchColumn(0); } else { $id = ''; } $q0 = get_link()->prepare('INSERT INTO ' . get_ini('BDD_PREFIX') . 'core_user_auths ( id, auth_id, user_id, password, avatar, lastname, firstname, mail, created_date, edited_date, deleted_date, created_id, edited_id, deleted_id) VALUES ( :id, :auth_id, :user_id, :password, :avatar, :lastname, :firstname, :mail, :created_id,:created_date, 0, 0, 0, 0)'); $q0->execute(array('id' => $id, 'auth_id' => $methodId, 'user_id' => $userId, 'password' => hashWithSalt($password), 'avatar' => $avatar, 'lastname' => $lastName, 'firstname' => $firstName, 'mail' => strtolower($mail), 'created_id' => $_SESSION['USER_ID'], 'created_date' => time())); if (strtoupper(get_ini('BDD_TYPE')) != 'ORACLE') { $id = get_link()->lastInsertId(); } return $id; }
function updatePassword($password, $isSendMail = 'TRUE') { $authMethodM = new authMethodManager(); // Generate a password $generatedPassword = stringGenerate(); if ($isSendMail == 'TRUE') { // On envoie le mail de confirmation avec le mot de passe $sujet = 'Modification du mot de passe - ' . get_ini('APPLICATION_NAME'); $message = ' Bonjour,<br /> <br /> Une réinitialisation de votre mot de passe a été demandée depuis l\'application ' . get_ini('APPLICATION_NAME') . '<br /> Login: <strong>' . $this->mail . '</strong><br /> Password: <strong>' . $generatedPassword . '</strong><br /> <br /> Merci!<br /> <br /> ' . get_ini('ADMIN_MAIL') . ' '; $destinataire = $this->mail; $headers = "From: " . get_ini('ADMIN_MAIL') . "\n"; $headers .= "Reply-To: " . get_ini('ADMIN_MAIL') . "\n"; $headers .= "Content-Type: text/html; charset=\"UTF-8\""; if (mail($destinataire, $sujet, $message, $headers)) { echo "L'email a bien été envoyé. Votre mot de passe s'y trouve."; } else { echo "Une erreur c'est produite lors de l'envois de l'email."; } } $q0 = get_link()->prepare('UPDATE ' . get_ini('BDD_PREFIX') . 'core_user_auths SET password=:password,edited_id=:edited_id, edited_date=:edited_date WHERE user_id=:id AND auth_id=:auth_id'); $q0->execute(array('id' => $this->id, 'password' => hashWithSalt($generatedPassword), 'auth_id' => $authMethodM->getId('LOCAL'), 'edited_id' => $_SESSION['USER_ID'], 'edited_date' => time())); }