Lemonldap-NG-Portal
view release on metacpan or search on metacpan
lib/Lemonldap/NG/Portal/Main/Display.pm view on Meta::CPAN
and $req->{error} != PE_BADCREDENTIALS
and $req->{error} != PE_PP_CHANGE_AFTER_RESET
and $req->{error} != PE_PP_PASSWORD_EXPIRED
and $req->{error} != PE_BADOLDPASSWORD
and $req->{error} != PE_PP_PASSWORD_EXPIRES_SOON )
)
{
$skinfile = 'error';
%templateParams = (
$self->getErrorTplParams($req),
(
$req->data->{customScript}
? ( CUSTOM_SCRIPT => $req->data->{customScript} )
: ()
),
);
}
# 3 Authentication has been refused OR first access
else {
$skinfile = 'login';
my $login = $req->user || $req->data->{suggestedLogin};
%templateParams = (
$self->getErrorTplParams($req),
AUTH_URL => $req->{data}->{_url},
LOGIN => $login,
ACTIVE_FORM => 1,
DONT_STORE_PASSWORD => $self->conf->{browsersDontStorePassword},
CHECK_LOGINS => $self->conf->{portalCheckLogins},
ASK_LOGINS => $req->param('checkLogins') || 0,
ASK_STAYCONNECTED => $req->param('stayconnected') || 0,
DISPLAY_RESETPASSWORD => $self->conf->{portalDisplayResetPassword},
DISPLAY_REGISTER => $self->conf->{portalDisplayRegister},
DISPLAY_UPDATECERTIF =>
$self->conf->{portalDisplayCertificateResetByMail},
MAILCERTIF_URL => $self->certificateResetUrl,
MAIL_URL => $self->passwordResetUrl,
REGISTER_URL => $self->registerUrl,
HIDDEN_INPUTS => $self->buildHiddenForm($req),
IMPERSONATION => $self->conf->{impersonationRule}
|| $self->conf->{proxyAuthServiceImpersonation},
ENABLE_PASSWORD_DISPLAY =>
$self->conf->{portalEnablePasswordDisplay},
%{ $self->getPasswordPolicyTemplateVars },
( (
$self->conf->{trustedBrowserRule}
or $self->stayConnected->( $req, $req->sessionInfo )
) ? ( STAYCONNECTED => 1 )
: ()
),
BROWSER_ALREADY_TRUSTED => $req->{data}->{browserAlreadyTrusted},
(
$self->rememberAuthChoice->( $req, $req->sessionInfo )
? ( REMEMBERAUTHCHOICE => 1 )
: ()
),
REMEMBERAUTHCHOICEDEFAULTCHECKED =>
$self->conf->{rememberDefaultChecked} // 0,
REMEMBERAUTHCHOICECOOKIENAME => $self->conf->{rememberCookieName}
// 'llngrememberauthchoice',
REMEMBERAUTHCHOICETIMER => $self->conf->{rememberTimer} // 5,
(
$req->data->{customScript}
? ( CUSTOM_SCRIPT => $req->data->{customScript} )
: ()
),
);
# External links
if ( $self->conf->{portalDisplayResetPassword} ) {
$templateParams{"MAIL_URL_EXTERNAL"} =
$self->_isExternalUrl( $req, $self->passwordResetUrl );
}
if ( $self->conf->{portalDisplayRegister} ) {
$templateParams{"REGISTER_URL_EXTERNAL"} =
$self->_isExternalUrl( $req, $self->registerUrl );
}
if ( $self->conf->{portalDisplayCertificateResetByMail} ) {
$templateParams{MAILCERTIF_URL_EXTERNAL} =
$self->_isExternalUrl( $req, $self->certificateResetUrl );
}
# Display captcha if it's enabled
if ( $req->captchaHtml ) {
%templateParams =
( %templateParams, CAPTCHA_HTML => $req->captchaHtml, );
}
if ( $req->token ) {
%templateParams = ( %templateParams, TOKEN => $req->token, );
}
# DEPRECATED: This is only used for compatibility with existing templates
if ( $req->captcha ) {
%templateParams = (
%templateParams,
CAPTCHA_SRC => $req->captcha,
CAPTCHA_SIZE => $self->{conf}->{captcha_size} || 6
);
}
# Show password form if password policy error
if (
$req->{error} == PE_PP_CHANGE_AFTER_RESET
or $req->{error} == PE_PP_MUST_SUPPLY_OLD_PASSWORD
or $req->{error} == PE_PP_INSUFFICIENT_PASSWORD_QUALITY
or $req->{error} == PE_PP_PASSWORD_TOO_SHORT
or $req->{error} == PE_PP_PASSWORD_TOO_YOUNG
or $req->{error} == PE_PP_PASSWORD_IN_HISTORY
or $req->{error} == PE_PASSWORD_MISMATCH
or $req->{error} == PE_BADOLDPASSWORD
or $req->{error} == PE_PASSWORDFORMEMPTY
or $req->{error} == PE_PP_PASSWORD_EXPIRES_SOON
or ( $req->{error} == PE_PP_PASSWORD_EXPIRED
and $self->conf->{ldapAllowResetExpiredPassword} )
)
{
%templateParams = (
%templateParams,
REQUIRE_OLDPASSWORD =>
1, # Old password is required to check user credentials
( run in 1.901 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )