Ejemplo n.º 1
0
 public function login($sUserName, $sPassword)
 {
     if ($sUserName === '' || $sPassword === '') {
         throw new LocalizedException('flash.login.empty_fields');
     }
     $iLoginResult = Session::getSession()->login($sUserName, $sPassword);
     if (($iLoginResult & Session::USER_IS_VALID) === Session::USER_IS_VALID) {
         Session::getSession()->setLanguage(Session::getSession()->getUser()->getLanguageId());
         return array('is_valid' => true);
     } else {
         if (($iLoginResult & Session::USER_IS_INACTIVE) === Session::USER_IS_INACTIVE) {
             throw new LocalizedException('flash.login_user_inactive');
         } else {
             if (($iLoginResult & Session::USER_NEEDS_PASSWORD_RESET) === Session::USER_NEEDS_PASSWORD_RESET) {
                 return array('needs_password_reset' => true);
             }
         }
     }
     if (AdminManager::initializeFirstUserIfEmpty($sUserName, $sPassword)) {
         throw new LocalizedException('flash.login_welcome2', array('username' => $sUserName, 'password' => $sPassword));
     }
     throw new LocalizedException('flash.login_check_params');
 }
Ejemplo n.º 2
0
 public static function login($sUserName = null, $sPassword = null, $sReferrer = '')
 {
     if ($sUserName === null) {
         $sUserName = $_POST[self::USER_NAME];
     }
     if ($sPassword === null) {
         $sPassword = $_POST[self::LOGIN_PASSWORD];
     }
     $oFlash = Flash::getFlash();
     if ($sUserName === '' || $sPassword === '') {
         $oFlash->addMessage('login.empty_fields');
         return;
     }
     $iAdminTest = Session::getSession()->login($sUserName, $sPassword);
     //User is valid
     if (($iAdminTest & Session::USER_IS_VALID) === Session::USER_IS_VALID) {
         if (isset($_REQUEST['origin'])) {
             $sReferrer = $_REQUEST['origin'];
         } else {
             if (Session::getSession()->hasAttribute('login_referrer')) {
                 $sReferrer = Session::getSession()->getAttribute('login_referrer');
                 Session::getSession()->resetAttribute('login_referrer');
             } else {
                 if (!$sReferrer) {
                     $sReferrer = LinkUtil::link(array(), 'AdminManager');
                 }
             }
         }
         if (($iAdminTest & Session::USER_IS_DEFAULT_USER) === Session::USER_IS_DEFAULT_USER) {
             Session::getSession()->setAttribute('change_password', 1);
             $sReferrer = LinkUtil::link(array('users', Session::getSession()->getUserId()), 'AdminManager');
         }
         LinkUtil::redirect($sReferrer);
     }
     //User is inactive
     if (($iAdminTest & Session::USER_IS_INACTIVE) === Session::USER_IS_INACTIVE) {
         $oFlash->addMessage('login_user_inactive');
         return;
     }
     //User is unknown
     $oFlash->addMessage('login_check_params');
     $sUsernameDefault = $sUserName;
     $sPasswordDefault = $sPassword;
     if (AdminManager::initializeFirstUserIfEmpty($sUsernameDefault, $sPasswordDefault)) {
         $oFlash->removeMessage('login_check_params');
         $oFlash->addMessage('login_welcome');
         $oFlash->addMessage('login_welcome2', array('username' => $sUsernameDefault, 'password' => $sPasswordDefault));
     }
 }