View | Details | Raw Unified | Return to bug 36617
Collapse All | Expand All

(-)a/opac/svc/auth/googleopenidconnect (-5 / +15 lines)
Lines 214-223 elsif ( defined $query->param('code') ) { Link Here
214
214
215
                    #handle redirect to main.pl, for private opac
215
                    #handle redirect to main.pl, for private opac
216
                    my $uri;
216
                    my $uri;
217
                    if (C4::Context->preference('OpacPublic') ) {
217
                    my $referer = $session->param( 'auth-refer-uri' );
218
                        $uri    =  '/cgi-bin/koha/opac-user.pl';
218
		    if ($referer) {
219
                    } else {
219
		      $uri = $referer =~ s/$regex//rg;
220
                        $uri    =  '/cgi-bin/koha/opac-main.pl';
220
		    } else {
221
                        if (C4::Context->preference('OpacPublic') ) {
222
                            $uri    =  '/cgi-bin/koha/opac-user.pl';
223
                        } else {
224
                            $uri    =  '/cgi-bin/koha/opac-main.pl';
225
                        }
221
                    }
226
                    }
222
                    print $query->redirect(
227
                    print $query->redirect(
223
                        -uri    => $uri,
228
                        -uri    => $uri,
Lines 244-249 else { Link Here
244
    my $openidstate = 'auth_';
249
    my $openidstate = 'auth_';
245
    $openidstate .= sprintf( "%x", rand 16 ) for 1 .. 32;
250
    $openidstate .= sprintf( "%x", rand 16 ) for 1 .. 32;
246
    $session->param( 'google-openid-state', $openidstate );
251
    $session->param( 'google-openid-state', $openidstate );
252
    my $referrer_uri = $ENV{HTTP_REFERER};
253
    my $logoutregex = qr/logout\.x=1/mp;
254
    if ($referrer_uri && ($referrer_uri =~ /^\Q$host\E/ )) {
255
          $referrer_uri =~ s/$logoutregex//rg;
256
          $session->param('auth-refer-uri', $referrer_uri );
257
    }
247
    $session->flush();
258
    $session->flush();
248
259
249
    my $prompt = $query->param('reauthenticate') // q{};
260
    my $prompt = $query->param('reauthenticate') // q{};
250
- 

Return to bug 36617