Example #1
0
 /**
  * Create automatically user for unregistered sue of registered sections of site
  *
  * @return Array of standard User account
  */
 public function AutoCreateUser()
 {
     if (!$sLogin) {
         $sLogin = Auth::GenerateLogin();
     }
     $bCheckedLogin = false;
     //if (!Db::GetOne("select count(*) from user where login='******'")) $bCheckedLogin=true;
     if (Auth::CheckLogin($sLogin)) {
         $bCheckedLogin = true;
     }
     if (!$bCheckedLogin) {
         for ($i = 0; $i <= 100; $i++) {
             $sLogin = Auth::GenerateLogin();
             if (Auth::CheckLogin($sLogin)) {
                 $bCheckedLogin = true;
                 break;
             }
         }
     }
     if ($bCheckedLogin) {
         $oUser = new User();
         Base::$aRequest['login'] = $sLogin;
         Base::$aRequest['password'] = Auth::GeneratePassword();
         if (Base::$aRequest['mobile']) {
             Base::$aRequest['phone'] = Base::$aRequest['operator'] . Base::$aRequest['mobile'];
             Base::$aRequest['data']['phone'] = Base::$aRequest['operator'] . Base::$aRequest['mobile'];
         }
         $oUser->DoNewAccount(true);
         return Db::GetRow(Base::GetSql('Customer', array('login' => $sLogin)));
     }
     return false;
 }