fixe #314458 - add url parameter in URL of CAS portal redirection
This commit is contained in:
parent
bc8d00970c
commit
e2d47ce982
|
@ -9,7 +9,7 @@ use strict;
|
|||
use Lemonldap::NG::Portal::Simple;
|
||||
use AuthCAS;
|
||||
|
||||
our $VERSION = '0.11';
|
||||
our $VERSION = '0.12';
|
||||
|
||||
## @apmethod int authInit()
|
||||
# Does nothing.
|
||||
|
@ -28,13 +28,23 @@ sub extractFormInfo {
|
|||
casUrl => $self->{CAS_url},
|
||||
CAFile => $self->{CAS_CAFile},
|
||||
);
|
||||
my $login_url = $cas->getServerLoginURL( $self->{CAS_loginUrl} );
|
||||
|
||||
my $casLoginUrl = $self->{CAS_loginUrl};
|
||||
my $casValidationUrl = $self->{CAS_validationUrl};
|
||||
if ($self->{_url})
|
||||
{
|
||||
my $url_param = 'url=' . $self->{_url};
|
||||
$casLoginUrl .= ( $casLoginUrl =~ /\?/ ? '&' : '?' ) . $url_param;
|
||||
$casValidationUrl .= ( $casValidationUrl =~ /\?/ ? '&' : '?' ) . $url_param;
|
||||
}
|
||||
|
||||
my $login_url = $cas->getServerLoginURL( $casLoginUrl );
|
||||
|
||||
my $ticket = $self->param('ticket');
|
||||
|
||||
# Unless a ticket has been found, we redirect the user
|
||||
unless ( $self->{user} =
|
||||
$cas->validateST( $self->{CAS_validationUrl}, $ticket ) )
|
||||
$cas->validateST( $casValidationUrl, $ticket ) )
|
||||
{
|
||||
print $self->redirect(
|
||||
-uri => $login_url,
|
||||
|
|
Loading…
Reference in New Issue
Block a user