Improve OIDC consents screen (#1431)

This commit is contained in:
Clément OUDOT 2018-06-19 20:04:04 +02:00
parent 9dfe054e64
commit 234a1840c5
2 changed files with 31 additions and 14 deletions

View File

@ -487,7 +487,21 @@ sub mkOidcConsent {
if ( $self->conf->{oidcRPMetaDataOptions} ) {
foreach my $oidc ( keys %{ $self->conf->{oidcRPMetaDataOptions} } ) {
$self->conf->{oidcRPMetaDataOptions}->{$oidc}->{oidcRPMetaDataOptionsDisplayName} ||= $oidc;
$self->conf->{oidcRPMetaDataOptions}->{$oidc}
->{oidcRPMetaDataOptionsDisplayName} ||= $oidc;
}
}
my $consents = {};
foreach ( keys %$session ) {
if ( $_ =~ /_oidc_consent_time_(.+)$/ ) {
$consents->{$1}->{time} = $session->{ "_oidc_consent_time_" . $1 };
$consents->{$1}->{scope} =
$session->{ "_oidc_consent_scope_" . $1 };
$consents->{$1}->{displayName} =
$self->conf->{oidcRPMetaDataOptions}->{$1}
->{oidcRPMetaDataOptionsDisplayName};
}
}
@ -496,17 +510,15 @@ sub mkOidcConsent {
params => {
partners => [
map {
$self->conf->{oidcRPMetaDataOptions}
and $self->conf->{oidcRPMetaDataOptions}->{$_}
? {
name => $_,
displayName =>
$self->conf->{oidcRPMetaDataOptions}->{$_}->{oidcRPMetaDataOptionsDisplayName},
}
: ()
} ( split /,/, $session->{_oidcConnectedRP} )
{
name => $_,
time => $consents->{$_}->{time},
scope => $consents->{$_}->{scope},
displayName => $consents->{$_}->{displayName}
}
} ( sort keys %$consents )
],
consents => $session->{_oidcConnectedRP},
consents => join( ",", keys %$consents ),
}
);
}

View File

@ -1,14 +1,19 @@
<table class="info">
<thead>
<tr>
<th trspan="service"></th>
<th trspan="service">Service</th>
<th trspan="date">Date</th>
<th trspan="scope">Scope</th>
<th trspan="action">Action</th>
</tr>
</thead>
<tbody>
<TMPL_LOOP NAME="partners">
<tr partner="<TMPL_VAR NAME="name">">
<td><TMPL_VAR NAME="displayName">
<a partner="<TMPL_VAR NAME="name">" class="oidcConsent link nodecor text-danger glyphicon glyphicon-minus-sign"></a>
<td><TMPL_VAR NAME="displayName"></td>
<td class="localeDate" val="<TMPL_VAR NAME="time">"></td>
<td><TMPL_VAR NAME="scope"></td>
<td><a partner="<TMPL_VAR NAME="name">" title="delete" class="oidcConsent link nodecor text-danger glyphicon glyphicon-minus-sign"></a></td>
</td>
</tr>
</TMPL_LOOP>