From 2b28b9caaea08e55b64d155e1b20fd6dfcf70ac3 Mon Sep 17 00:00:00 2001 From: Jared Camins-Esakov Date: Sat, 4 Aug 2012 13:48:00 -0400 Subject: [PATCH] Bug 8572: invalid auth shouldn't cause error Prior to this patch, attempting to view an invalid authority in the OPAC gave a system error instead of a 404. With this patch, the user will just get a 404, as is the case with invalid bibs. To test: 1) Try to view an invalid authority by going to: /cgi-bin/koha/opac-authoritiesdetail.pl?authid=999999999999 (presuming that you don't have an authority with authid 999999999999 in your database) before and after applying this patch Signed-off-by: Chris Cormack Signed-off-by: Paul Poulain --- opac/opac-authoritiesdetail.pl | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/opac/opac-authoritiesdetail.pl b/opac/opac-authoritiesdetail.pl index 278db999c7..8d5367ffb3 100755 --- a/opac/opac-authoritiesdetail.pl +++ b/opac/opac-authoritiesdetail.pl @@ -67,9 +67,14 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( ); my $authid = $query->param('authid'); +my $record = GetAuthority( $authid ); +if ( ! $record ) { + print $query->redirect("/cgi-bin/koha/errors/404.pl"); # escape early + exit; +} + my $authtypecode = &GetAuthTypeCode( $authid ); -my $record; if ($display_hierarchy){ my $trees=BuildUnimarcHierarchies($authid); my @trees = split /;/,$trees ; @@ -83,7 +88,6 @@ if ($display_hierarchy){ foreach my $element (@tree){ my $cell; my $elementdata = GetAuthority($element); - $record= $elementdata if ($authid==$element); push @loophierarchy, BuildUnimarcHierarchy($elementdata,"child".$cnt, $authid); $cnt++; } @@ -94,9 +98,6 @@ if ($display_hierarchy){ 'loophierarchies' =>\@loophierarchies, ); } -else { - $record = GetAuthority( $authid ); -} my $count = CountUsage($authid); -- 2.20.1