示例#1
0
 public function do_login()
 {
     $request = $this->getRequest();
     if ($request->isPost()) {
         $username = $request->postvar('username');
         $password = $request->postvar('password');
         if (empty($username) || empty($password)) {
             $this->_addMessage('error', _('All fields are required'), 'login');
             $this->_redirect('/user/login');
         }
         if ($username == 'admin' && NetAidManager::check_adminpass($password)) {
             $_SESSION['token'] = md5(uniqid(rand(), true));
             $_SESSION['logged_in'] = 1;
             $this->_redirect('/admin/index');
         } else {
             $this->_addMessage('error', _('Username/password is incorrect.'), 'login');
             $this->_redirect('/user/login');
         }
     }
 }
 protected function password_validate($adminpass_check, $adminpass, $adminpass_confirm)
 {
     $valid = true;
     if (!($adminpass_check && $adminpass && $adminpass_confirm)) {
         $valid = false;
         $this->_addMessage('error', _('All fields are required.'), 'pwd');
         if (empty($adminpass_check)) {
             $this->_addFormError('adminpass_check', 'pwd');
         }
         if (empty($adminpass)) {
             $this->_addFormError('adminpass', 'pwd');
         }
         if (empty($adminpass_confirm)) {
             $this->_addFormError('adminpass_confirm', 'pwd');
         }
     }
     if (!NetAidManager::check_adminpass($adminpass_check)) {
         $valid = false;
         $this->_addMessage('error', _('Current admin password is incorrect.'), 'pwd');
         $this->_addFormError('adminpass_check', 'pwd');
     }
     if (!($adminpass == $adminpass_confirm)) {
         $valid = false;
         $this->_addMessage('error', _('Passwords do not match.'), 'pwd');
         $this->_addFormError('adminpass', 'pwd');
         $this->_addFormError('adminpass_confirm', 'pwd');
     }
     $passlen = strlen($adminpass);
     if ($passlen < 8) {
         $valid = false;
         $this->_addMessage('error', _('Password must be at least 8 characters.'), 'pwd');
         $this->_addFormError('adminpass', 'pwd');
         $this->_addFormError('adminpass_confirm', 'pwd');
     }
     return $valid;
 }