X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=password_change.php;h=89e79c7ff3197ea2fd88a216bf71a42ebe9df113;hb=5f64df1308fd641565631e6e38d282432f5e6250;hp=8e56521294bc1827d45d43b5402f1bd5895f38a9;hpb=d26c95718cac0a2994ab4e9633b59f420a0816b4;p=timetracker.git diff --git a/password_change.php b/password_change.php index 8e565212..89e79c7f 100644 --- a/password_change.php +++ b/password_change.php @@ -59,19 +59,19 @@ $cl_password1 = $request->getParameter('password1'); $cl_password2 = $request->getParameter('password2'); $form = new Form('newPasswordForm'); -$form->addInput(array('type'=>'text','maxlength'=>'120','name'=>'password1','aspassword'=>true,'value'=>$cl_password1)); -$form->addInput(array('type'=>'text','maxlength'=>'120','name'=>'password2','aspassword'=>true,'value'=>$cl_password2)); +$form->addInput(array('type'=>'password','maxlength'=>'120','name'=>'password1','value'=>$cl_password1)); +$form->addInput(array('type'=>'password','maxlength'=>'120','name'=>'password2','value'=>$cl_password2)); $form->addInput(array('type'=>'hidden','name'=>'ref','value'=>$cl_ref)); $form->addInput(array('type'=>'submit','name'=>'btn_save','value'=>$i18n->getKey('button.save'))); -if ($request->getMethod() == 'POST') { +if ($request->isPost()) { // Validate user input. - if (!ttValidString($cl_password1)) $errors->add($i18n->getKey('error.field'), $i18n->getKey('label.password')); - if (!ttValidString($cl_password2)) $errors->add($i18n->getKey('error.field'), $i18n->getKey('label.confirm_password')); + if (!ttValidString($cl_password1)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.password')); + if (!ttValidString($cl_password2)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.confirm_password')); if ($cl_password1 !== $cl_password2) - $errors->add($i18n->getKey('error.not_equal'), $i18n->getKey('label.password'), $i18n->getKey('label.confirm_password')); + $err->add($i18n->getKey('error.not_equal'), $i18n->getKey('label.password'), $i18n->getKey('label.confirm_password')); - if ($errors->isEmpty()) { + if ($err->no()) { // Use the "limit" plugin if we have one. Ignore include errors. // The "limit" plugin is not required for normal operation of Time Tracker. $cl_login = $user->login; // $cl_login is used in access_check.cpp. @@ -81,13 +81,20 @@ if ($request->getMethod() == 'POST') { if ($auth->doLogin($user->login, $cl_password1)) { setcookie('tt_login', $user->login, time() + COOKIE_EXPIRE, '/'); - header('Location: time.php'); + // Redirect, depending on user role. + if ($user->isAdmin()) { + header('Location: admin_teams.php'); + } elseif ($user->isClient()) { + header('Location: reports.php'); + } else { + header('Location: time.php'); + } exit(); } else { - $errors->add($i18n->getKey('error.auth')); + $err->add($i18n->getKey('error.auth')); } } -} +} // isPost $smarty->assign('forms', array($form->getName() => $form->toArray())); $smarty->assign('title', $i18n->getKey('title.change_password'));