X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fplatal.php;h=9502edd254612979057fd91a204c1fa1ee4747be;hb=911075226546c6b058eca1e0b889097f79fa6232;hp=3be5bc15deaa00ef559bc59826ceb22ba4c01aea;hpb=45ea6160465aeba0aa780e49c12272819dedffd1;p=platal.git diff --git a/modules/platal.php b/modules/platal.php index 3be5bc1..9502edd 100644 --- a/modules/platal.php +++ b/modules/platal.php @@ -21,7 +21,7 @@ function bugize($list) { - $list = preg_split('/,/', Env::s('libs'), -1, PREG_SPLIT_NO_EMPTY); + $list = preg_split('/,/', $list, -1, PREG_SPLIT_NO_EMPTY); $ans = array(); foreach ($list as $bug) { @@ -229,6 +229,7 @@ class PlatalModule extends PLModule $page->changeTpl('platal/password.tpl'); $page->setTitle('Mon mot de passe'); + $page->assign('do_auth', 0); } function handler_smtppass($page) @@ -275,7 +276,7 @@ class PlatalModule extends PLModule return; } - if (!ereg('[0-3][0-9][0-1][0-9][1][9]([0-9]{2})', Env::v('birth'))) { + if (!preg_match('/^[0-3][0-9][0-1][0-9][1][9]([0-9]{2})$/', Env::v('birth'))) { $page->trigError('Date de naissance incorrecte ou incohérente'); return; } @@ -343,8 +344,7 @@ Email envoyé à ".Env::v('login') . (Post::has('email') ? " Adresse de secours : " . Post::v('email') : "")); $mymail->send(); - // on cree un objet logger et on log l'evenement - S::logger($user->id())->log('recovery', $mails); + S::logger($user->id())->log('recovery', is_null($to) ? $inactives_to . ', ' . $user->bestEmail() : $to); } function handler_tmpPWD($page, $certif = null) @@ -383,9 +383,20 @@ Adresse de secours : " . Post::v('email') : "")); } S::logger($uid)->log("passwd", ""); + + // Try to start a session (so the user don't have to log in); we will use + // the password available in Post:: to authenticate the user. + Platal::session()->start(AUTH_MDP); + $page->changeTpl('platal/tmpPWD.success.tpl'); } else { + $hruid = XDB::fetchOneCell('SELECT hruid + FROM accounts + WHERE uid = {?}', + $uid); $page->changeTpl('platal/password.tpl'); + $page->assign('hruid', $hruid); + $page->assign('do_auth', 1); } }