Restore password, need senmail

This commit is contained in:
JoseluCross
2018-10-18 20:19:30 +02:00
parent 8e5d88cd3f
commit cb7a16984b
3 changed files with 53 additions and 4 deletions

View File

@@ -415,14 +415,26 @@ $app->get('/add', function(Request $request) use($app){
})->bind('add')->method('GET|POST');
$app->get('/restore', function(Request $request) use($app){
if($request->getMethod()=="POST"){
return $app['data']->createRestoreToken($request->get('emailre'));
}
$page = array("title"=>"Restore your password",
"description"=>"None",
"page" =>"None");
return $app['twig']->render($app['fronthtml']."/restore.twig",array("page" => $page));
})->bind('restore')->method('GET|POST');
$app->get('/restore/{nick}/{token}-{timestamp}', function(Request $request, $nick, $token, $timestamp) use($app){
$time = 3600; //An hour
$now = time();
if($now - $timestamp > $time){
$app->abort(401);
$app->abort(408);
}else{
if(!$app['data']->checkRestoreToken($nick,$token,$timestamp))
$app->abort(408);
$app->abort(401);
if($request->getMethod()=='POST'){
$pass = $request->get('pwdre');
$passre = $request->get('pwdre-re');
@@ -430,12 +442,13 @@ $app->get('/restore/{nick}/{token}-{timestamp}', function(Request $request, $nic
return "NO_MATCH";
}
else{
$idu = $app['daata']->loadIDU($request->get('emailre'));
$idu = $app['data']->loadIDU($request->get('emailre'));
$iduC = $app['data']->loadIDU($nick,'nick');
if($idu != $iduC)
return "BAD_EMAIL";
$app['data']->updatePass($idu,$pass);
}
$app['data']->setToken($idu,"");
return "UPDATE";
}else{
$page = array(