コード例 #1
0
ファイル: clsUser.php プロジェクト: shifter/ospap2
 public static function attemptRecover($strName)
 {
     $objUser = clsUser::getByName($strName);
     if ($objUser == null) {
         return 'forgot_unknown';
     }
     if ($objUser->get('email') == '') {
         return 'forgot_noemail';
     }
     $strNewPassword = '';
     for ($i = 0; $i < 20; $i++) {
         $strNewPassword .= substr('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', rand(0, 61), 1);
     }
     $objUser->set('temp_password', md5($strNewPassword));
     $objUser->set('temp_password_date', date('Y-m-d H:i:s', time()));
     $objUser->save();
     $strMessage = "Your password for " . SITE_NAME . " has been reset to:\r\n\r\n";
     $strMessage .= $strNewPassword . "\r\n\r\n";
     $strMessage .= "This password will expire soon, so be sure to change it.\r\n";
     return smtp_send(array($objUser->get('email')), SITE_NAME, SITE_NAME . ": Forgot Password", $strMessage);
 }