Piwik\Plugins\Login\Controller::login PHP Method

login() public method

Login form
public login ( string $messageNoAccess = null, boolean $infoMessage = false ) : string
$messageNoAccess string Access error message
$infoMessage boolean
return string
    function login($messageNoAccess = null, $infoMessage = false)
    {
        $form = new FormLogin();
        $form->removeAttribute('action');
        // remove action attribute, otherwise hash part will be lost
        if ($form->validate()) {
            $nonce = $form->getSubmitValue('form_nonce');
            if (Nonce::verifyNonce('Login.login', $nonce)) {
                $login = $form->getSubmitValue('form_login');
                $password = $form->getSubmitValue('form_password');
                $rememberMe = $form->getSubmitValue('form_rememberme') == '1';
                try {
                    $this->authenticateAndRedirect($login, $password, $rememberMe);
                } catch (Exception $e) {
                    $messageNoAccess = $e->getMessage();
                }
            } else {
                $messageNoAccess = $this->getMessageExceptionNoAccess();
            }
        }
        $view = new View('@Login/login');
        $view->AccessErrorString = $messageNoAccess;
        $view->infoMessage = nl2br($infoMessage);
        $view->addForm($form);
        $this->configureView($view);
        self::setHostValidationVariablesView($view);
        return $view->render();
    }

Usage Example

 /**
  * Login form. Decrypts received password value and then calls
  * the original (parent class) function for regular processing.
  *
  * @see the parent class function for parameters and return value
  */
 public function login($messageNoAccess = null, $infoMessage = false)
 {
     $form = new FormLogin();
     // check if "encrypted" flag is set
     if (Common::getRequestVar('form_encrypted', 'false', 'string') == 'true') {
         $this->decryptPassword($form, 'form_password');
     }
     // call the original function on the decrypted values
     return parent::login($messageNoAccess, $infoMessage);
 }
All Usage Examples Of Piwik\Plugins\Login\Controller::login