Add feature, redirect after logout.
This commit is contained in:
parent
476b14f82c
commit
04c902a23e
7 changed files with 73 additions and 6 deletions
|
|
@ -1001,12 +1001,12 @@ sub www_createAccountSave {
|
|||
return $self->showMessageOnLogin;
|
||||
}
|
||||
elsif ($self->session->form->get('returnUrl')) {
|
||||
$self->session->response->setRedirect( $self->session->form->get('returnUrl') );
|
||||
$self->session->response->redirect( $self->session->form->get('returnUrl') );
|
||||
$self->session->scratch->delete("redirectAfterLogin");
|
||||
}
|
||||
elsif ($self->session->scratch->get("redirectAfterLogin")) {
|
||||
my $url = $self->session->scratch->delete("redirectAfterLogin");
|
||||
$self->session->response->setRedirect($url);
|
||||
$self->session->response->redirect($url);
|
||||
return undef;
|
||||
}
|
||||
else {
|
||||
|
|
@ -1283,7 +1283,12 @@ sub www_logout {
|
|||
|
||||
# Do not allow caching of the logout page (to ensure the page gets requested)
|
||||
$self->session->response->setCacheControl( "none" );
|
||||
|
||||
|
||||
if ( $self->session->setting->get("redirectAfterLogoutUrl") ) {
|
||||
$self->session->log->warn("redirecting to: ".$self->session->setting->get("redirectAfterLogoutUrl"));
|
||||
$self->session->response->setRedirect($self->session->setting->get("redirectAfterLogoutUrl"));
|
||||
}
|
||||
|
||||
return undef;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -495,6 +495,14 @@ sub definition {
|
|||
label => $i18n->get( 'redirectAfterLoginUrl label' ),
|
||||
hoverHelp => $i18n->get( 'redirectAfterLoginUrl description' ),
|
||||
};
|
||||
push @fields, {
|
||||
tab => "user",
|
||||
name => "redirectAfterLogoutUrl",
|
||||
fieldType => "url",
|
||||
defaultValue => $setting->get('redirectAfterLogoutUrl'),
|
||||
label => $i18n->get( 'redirectAfterLogoutUrl label' ),
|
||||
hoverHelp => $i18n->get( 'redirectAfterLogoutUrl description' ),
|
||||
};
|
||||
push @fields, {
|
||||
tab => "user",
|
||||
name => "showMessageOnLogin",
|
||||
|
|
|
|||
|
|
@ -176,8 +176,7 @@ sub setRedirect {
|
|||
my @params = $self->session->form->param;
|
||||
return undef if ($url eq $self->session->url->page() && scalar(@params) < 1); # prevent redirecting to self
|
||||
$self->session->log->info("Redirecting to $url");
|
||||
$self->location($url);
|
||||
$self->status($type);
|
||||
$self->redirect($url, $type);
|
||||
$self->session->style->setMeta({"http-equiv"=>"refresh",content=>"0; URL=".$url});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4214,12 +4214,24 @@ LongTruncOk=1</p>
|
|||
context => q{Label for site setting},
|
||||
},
|
||||
|
||||
'showMessageOnLogin description' => {
|
||||
'redirectAfterLoginUrl description' => {
|
||||
message => q{Users will be redirected to this url after logging in.},
|
||||
lastUpdated => 0,
|
||||
context => q{Description for site setting},
|
||||
},
|
||||
|
||||
'redirectAfterLogoutUrl label' => {
|
||||
message => q{Redirect After Logout Url},
|
||||
lastUpdated => 0,
|
||||
context => q{Label for site setting},
|
||||
},
|
||||
|
||||
'redirectAfterLogoutUrl description' => {
|
||||
message => q{Users will be redirected to this url after logging out.},
|
||||
lastUpdated => 0,
|
||||
context => q{Description for site setting},
|
||||
},
|
||||
|
||||
'showMessageOnLogin label' => {
|
||||
message => q{Show Message On Login?},
|
||||
lastUpdated => 0,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue