From 219ec8f8981489577762cb4f5629dcec208c9412 Mon Sep 17 00:00:00 2001 From: Chris Cormack Date: Thu, 21 Feb 2013 11:34:41 +1300 Subject: [PATCH] Bug 9587 : Handling mismatched emails better To test: Sign in to Koha via persona using an email that doesn't exist in Koha Before the patch you will get into an infinite redirect loop After the patch it will give you an error message Signed-off-by: Bernardo Gonzalez Kriegel Comment: Work as described. No errors. Signed-off-by: Jared Camins-Esakov --- koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc | 5 ++++- opac/svc/login | 10 ++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc b/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc index b875028e9b..78c8bd36eb 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc @@ -72,7 +72,10 @@ navigator.id.watch({ function (data) { window.location = '/cgi-bin/koha/opac-user.pl'; } - ); + ) + .fail(function() { var errstr = _("Could not login, perhaps your Persona email does not match your Koha one"); + alert(errstr); + }); }, onlogout: function () { window.location = '/cgi-bin/koha/opac-main.pl?logout.x=1'; diff --git a/opac/svc/login b/opac/svc/login index 607b566b78..ed41e0818c 100755 --- a/opac/svc/login +++ b/opac/svc/login @@ -44,8 +44,14 @@ if ( $response->is_success ) { my $decoded_json = decode_json($content); my ( $userid, $cookie, $sessionID ) = checkauth( $query, 1, { borrow => 1 }, 'opac', $decoded_json->{'email'} ); - print $query->header( -cookie => $cookie ); - print $decoded_json; + if ($userid) { # a valid user has logged in + print $query->header( -cookie => $cookie ); + print $decoded_json; + } + else { +# logged in with an email that isn't associated with a borrower + die "Email not associated with a borrower"; + } } else { warn $response->status_line, "\n"; -- 2.39.5