Use user skin in loadTemplate (Fixes: #1828)

This commit is contained in:
Xavier 2019-06-28 13:40:56 +02:00
parent c411406886
commit c921c295ed
20 changed files with 54 additions and 33 deletions

View File

@ -86,6 +86,7 @@ sub run {
# Use HTML template
$body = $self->loadTemplate(
$req,
'mail_2fcode',
filter => $tr,
params => \%tplPrms

View File

@ -114,6 +114,7 @@ sub authenticate {
my $remainingTime = $_pwdExpire - $timestamp;
$req->info(
$self->loadTemplate(
$req,
'pwdWillExpire',
params => {
time => join(

View File

@ -308,7 +308,8 @@ sub run {
$req->info(
$self->loadTemplate(
'casBack2Url', params => { url => $logout_url }
$req, 'casBack2Url',
params => { url => $logout_url }
)
);
$req->data->{activeTimer} = 0;

View File

@ -231,6 +231,7 @@ sub _openIDResponse {
# TODO
$req->info(
$self->loadTemplate(
$req,
'simpleInfo',
params => { trspan => "openidExchange,$data->{trust_root}" }
)

View File

@ -556,6 +556,7 @@ sub run {
}
$req->info(
$self->loadTemplate(
$req,
'oidcGiveConsent',
params => {
displayName => $display_name,
@ -947,7 +948,7 @@ sub run {
: PE_OK;
}
$req->info( $self->loadTemplate('oidcLogout') );
$req->info( $self->loadTemplate( $req, 'oidcLogout' ) );
$req->data->{activeTimer} = 0;
return PE_CONFIRM;
}

View File

@ -917,8 +917,10 @@ sub run {
. ' width="0" height="0" frameborder="0"></iframe>';
$req->info(
$self->loadTemplate( 'simpleInfo',
params => { trspan => 'updateCdc' } )
$self->loadTemplate(
$req, 'simpleInfo',
params => { trspan => 'updateCdc' }
)
. $cdc_iframe
);
}

View File

@ -209,6 +209,7 @@ sub userBind {
if ( $resp->grace_authentications_remaining ) {
$req->info(
$self->{portal}->loadTemplate(
$req,
'ldapPpGrace',
params => {
number => $resp->grace_authentications_remaining
@ -220,6 +221,7 @@ sub userBind {
if ( $resp->time_before_expiration ) {
$req->info(
$self->{portal}->loadTemplate(
$req,
'simpleInfo',
params => {
trspan => 'authRemaining,'

View File

@ -62,7 +62,7 @@ sub checkForNotifications {
# Go to next file if no notification found
next unless $j;
$i++;
$form .= $self->toForm(@res);
$form .= $self->toForm( $req, @res );
}
# Stop here if nothing to display
@ -192,7 +192,7 @@ sub getNotifBack {
}
sub toForm {
my ( $self, @notifs ) = @_;
my ( $self, $req, @notifs ) = @_;
my $i = 0;
@notifs = map {
$i++;
@ -205,7 +205,7 @@ sub toForm {
$_->{id} = "1x$i";
$_;
} @notifs;
return $self->loadTemplate( 'notifinclude',
return $self->loadTemplate( $req, 'notifinclude',
params => { notifications => \@notifs } );
}

View File

@ -73,6 +73,7 @@ sub sregHook {
}
}
$req->data->{_openIdTrustExtMsg} .= $self->loadTemplate(
$req,
'openIdPol',
params => {
policies => \@pol,
@ -96,7 +97,8 @@ sub sregHook {
$req->info(
$self->loadTemplate(
'simpleInfo', params => { trspan => "openidRpns,$k" }
$req, 'simpleInfo',
params => { trspan => "openidRpns,$k" }
)
);
return ( 0, {} );
@ -198,6 +200,7 @@ sub sregHook {
}
$req->data->{_openIdTrustExtMsg} .= $self->loadTemplate(
$req,
'openIdTrust',
params => {
required => \@mreq,

View File

@ -2547,6 +2547,7 @@ sub sendLogoutRequestToProvider {
# Create iFrame
$info .= $self->loadTemplate(
$req,
'samlSpLogout',
params => {
url => $slo_url,
@ -2582,6 +2583,7 @@ sub sendLogoutRequestToProvider {
# Create iFrame
$info .= $self->loadTemplate(
$req,
'samlSpLogout',
params => {
url => $slo_url,
@ -2620,6 +2622,7 @@ sub sendLogoutRequestToProvider {
# Display information to the user
$info .= $self->loadTemplate(
$req,
'samlSpSoapLogout',
params => {
imgUrl => $slo_url,
@ -2718,7 +2721,7 @@ sub sendLogoutRequestToProviders {
# Print some information to the user.
$req->info(
$self->loadTemplate(
'samlSpsLogout', params => { content => $content }
$req, 'samlSpsLogout', params => { content => $content }
)
) if $providersCount;

View File

@ -527,12 +527,13 @@ sub getSkin {
# @param $displaError To display "Error" column
# @return HTML string
sub mkSessionArray {
my ( $self, $sessions, $title, $displayUser, $displayError ) = @_;
my ( $self, $req, $sessions, $title, $displayUser, $displayError ) = @_;
return "" unless ( ref $sessions eq "ARRAY" and @$sessions );
my @fields = sort keys %{ $self->conf->{sessionDataToRemember} };
return $self->loadTemplate(
$req,
'sessionArray',
params => {
title => $title,
@ -560,7 +561,7 @@ sub mkSessionArray {
}
sub mkOidcConsent {
my ( $self, $session ) = @_;
my ( $self, $req, $session ) = @_;
if ( defined( $self->conf->{oidcRPMetaDataOptions} )
and ref( $self->conf->{oidcRPMetaDataOptions} ) )
@ -603,6 +604,7 @@ sub mkOidcConsent {
# Display existing oidcConsents
return $self->loadTemplate(
$req,
'oidcConsents',
params => {
partners => [

View File

@ -136,17 +136,17 @@ sub displayModules {
}
elsif ( $module->[0] eq 'LoginHistory' ) {
$moduleHash->{'SUCCESS_LOGIN'} =
$self->p->mkSessionArray(
$self->p->mkSessionArray( $req,
$req->{sessionInfo}->{_loginHistory}->{successLogin},
"", 0, 0 );
$moduleHash->{'FAILED_LOGIN'} =
$self->p->mkSessionArray(
$self->p->mkSessionArray( $req,
$req->{sessionInfo}->{_loginHistory}->{failedLogin},
"", 0, 1 );
}
elsif ( $module->[0] eq 'OidcConsents' ) {
$moduleHash->{'OIDC_CONSENTS'} =
$self->p->mkOidcConsent( $req->sessionInfo );
$self->p->mkOidcConsent( $req, $req->sessionInfo );
}
push @$displayModules, $moduleHash;
}

View File

@ -69,11 +69,7 @@ sub loadTemplate {
sub displayTemplate {
my ( $self, $req, $template, $params ) = @_;
$self->logger->debug("Return $template template");
$req->info(
$self->loadTemplate(
$template, params => $params
)
);
$req->info( $self->loadTemplate( $req, $template, params => $params ) );
return PE_INFO;
}
@ -95,8 +91,7 @@ sub createNotification {
$content =~ s/_title_/$title/;
$content =~ s/_msg_/$msg/;
if ( $notifEngine->module->notifObject->newNotification($content) )
{
if ( $notifEngine->module->notifObject->newNotification($content) ) {
$self->logger->debug("Notification $ref successfully created");
$self->userLogger->notice(
"Notification $ref / $date successfully created for $uid");

View File

@ -160,7 +160,7 @@ sub authLogout {
sub deleteSession {
my ( $self, $req ) = @_;
if ( my $id = $req->id || $req->userData->{_session_id} ) {
my $apacheSession = $self->getApacheSession( $id );
my $apacheSession = $self->getApacheSession($id);
unless ($apacheSession) {
$self->logger->debug("Session $id already deleted");
return PE_OK;
@ -183,7 +183,8 @@ sub deleteSession {
$req->info(
$self->loadTemplate(
'simpleInfo', params => { trspan => 'logoutFromOtherApp' }
$req, 'simpleInfo',
params => { trspan => 'logoutFromOtherApp' }
)
);

View File

@ -176,6 +176,7 @@ sub refresh {
if ($res) {
$req->info(
$self->loadTemplate(
$req,
'simpleInfo', params => { trspan => 'rightsReloadNeedsLogout' }
)
);
@ -1023,12 +1024,12 @@ sub _sumUpSession {
# Temlate loader
sub loadTemplate {
my ( $self, $name, %prm ) = @_;
my ( $self, $req, $name, %prm ) = @_;
$name .= '.tpl';
my $tpl = HTML::Template->new(
filename => $name,
path => [
$self->conf->{templateDir} . '/' . $self->conf->{portalSkin},
$self->conf->{templateDir} . '/' . $self->getSkin($req),
$self->conf->{templateDir} . '/bootstrap/',
$self->conf->{templateDir} . '/common/'
],

View File

@ -73,7 +73,7 @@ sub run {
$self->logger->debug("Transformed message -> $msg");
$req->info(
$self->loadTemplate(
'simpleInfo', params => { trspan => $msg }
$req, 'simpleInfo', params => { trspan => $msg }
)
);
$self->userLogger->error( 'User '

View File

@ -23,7 +23,7 @@ sub run {
$self->logger->debug('History asked');
$req->info( (
$req->sessionInfo->{_loginHistory}->{successLogin}
? $self->p->mkSessionArray(
? $self->p->mkSessionArray( $req,
$req->sessionInfo->{_loginHistory}->{successLogin},
'lastLogins', 0, 0 )
: ""
@ -31,14 +31,14 @@ sub run {
. ("<hr>")
. (
$req->sessionInfo->{_loginHistory}->{failedLogin}
? $self->p->mkSessionArray(
? $self->p->mkSessionArray( $req,
$req->sessionInfo->{_loginHistory}->{failedLogin},
'lastFailedLogins', 0, 1 )
: ""
)
);
unless ( $req->info ) {
$req->info( $self->loadTemplate('noHistory') );
$req->info( $self->loadTemplate( $req, 'noHistory' ) );
}
return PE_INFO;
}

View File

@ -335,6 +335,7 @@ sub _reset {
# Use HTML template
$body = $self->loadTemplate(
$req,
'mail_confirm',
filter => $tr,
params => \%tplPrms
@ -473,6 +474,7 @@ sub changePwd {
# Use HTML template
$body = $self->loadTemplate(
$req,
'mail_password',
filter => $tr,
params => \%tplPrms

View File

@ -310,6 +310,7 @@ sub _register {
# Use HTML template
$body = $self->loadTemplate(
$req,
'mail_register_confirm',
filter => $tr,
params => \%tplPrms
@ -369,6 +370,7 @@ sub _register {
# Use HTML template
$body = $self->loadTemplate(
$req,
'mail_register_done',
filter => $tr,
params => \%tplPrms

View File

@ -69,10 +69,12 @@ sub run {
}
}
}
$req->info( $self->p->mkSessionArray( $deleted, 'sessionsDeleted', 1 ) )
$req->info(
$self->p->mkSessionArray( $req, $deleted, 'sessionsDeleted', 1 ) )
if ( $self->conf->{notifyDeleted} and @$deleted );
$req->info( $self->p->mkSessionArray( $otherSessions, 'otherSessions', 1 )
. $self->_mkRemoveOtherLink() )
$req->info(
$self->p->mkSessionArray( $req, $otherSessions, 'otherSessions', 1 )
. $self->_mkRemoveOtherLink($req) )
if ( $self->conf->{notifyOther} and @$otherSessions );
PE_OK;
@ -82,10 +84,11 @@ sub run {
# Last part of URL is built trough javascript
# @return removeOther link in HTML code
sub _mkRemoveOtherLink {
my $self = shift;
my ( $self, $req ) = @_;
# TODO: remove this
return $self->loadTemplate(
$req,
'removeOther',
params => {
link => $self->conf->{portal} . "?removeOther=1"