Exemplo n.º 1
0
 /**
  * Authenticates the password.
  * This is the 'authenticate' validator as declared in rules().
  */
 public function reset()
 {
     $external = true;
     $user = ExternalUser::model()->findByAttributes(array('name_usr' => $this->username));
     if ($user === NULL) {
         // check internal
         $user = InternalUser::model()->findByAttributes(array('email_uin' => $this->username));
         if ($user === NULL) {
             // no user found
         }
         $external = false;
     }
     if ($external) {
         $user->email_code_usr = md5(date('Y-m-d H:i:s') . self::SALT);
         $user->save();
         ExternalUserHistory::addLog('Requested password reset!', $user->id_usr);
         $md5 = $user->id_usr . 'e;' . $user->email_code_usr;
         $name = $user->name_usr;
         $email = $user->email_usr;
     } else {
         $md5 = $user->id_uin . 'i;' . md5($user->fname_uin . $user->password_uin);
         $name = $user->fname_uin;
         $email = $user->email_uin;
     }
     ResetpasswordForm::send_first_email($md5, $name, $email, $external);
 }