示例#1
0
 private function onChange($token)
 {
     $userid = (int) Common::getGet('userid');
     if (false === ($ac = GWF_AccountChange::checkToken($userid, $token, 'demo'))) {
         return $this->module->error('err_token');
     }
     if (false === ($user = GWF_User::getByID($userid))) {
         return GWF_HTML::err('ERR_UNKNOWN_USER');
     }
     if (false === ($data = @unserialize($ac->getVar('data')))) {
         return GWF_HTML::err('ERR_GENERAL', array(__FILE__, __LINE__));
     }
     if (false === $user->saveVars($data)) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     if (false === $ac->delete()) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     GWF_AccountChange::createToken($userid, 'demo_lock');
     return $this->module->message('msg_demo_changed');
 }
示例#2
0
文件: Form.php 项目: sinfocol/gwf3
 private function getRequestLink(GWF_User $user)
 {
     $userid = $user->getID();
     require_once GWF_CORE_PATH . 'module/Account/GWF_AccountChange.php';
     if (false === ($token = GWF_AccountChange::createToken($userid, 'pass'))) {
         return 'ERR';
     }
     $url = Common::getAbsoluteURL(sprintf('change_password/%d/%s', $userid, $token));
     return sprintf('<a href="%s">%s</a>', $url, $url);
 }
示例#3
0
 private static function sendEmailB(Module_Account $module, $userid, $email)
 {
     $token = GWF_AccountChange::createToken($userid, 'email2', $email);
     $mail = new GWF_Mail();
     $mail->setSender($module->cfgMailSender());
     $mail->setReceiver($email);
     $mail->setSubject($module->lang('chmailb_subj'));
     if (false === ($user = GWF_User::getByID($userid))) {
         return GWF_HTML::err('ERR_UNKNOWN_USER');
     }
     $link = self::getLinkB($token, $userid);
     $body = $module->lang('chmailb_body', array($user->display('user_name'), $link));
     $mail->setBody($body);
     if (!$mail->sendToUser($user)) {
         return GWF_HTML::err('ERR_MAIL_SENT');
     }
     return $module->message('msg_mail_sent', array(htmlspecialchars($email)));
 }