From e8113fb7c0bccf1c6387b4d51c16dda4d0fd2027 Mon Sep 17 00:00:00 2001 From: Aleisha Amohia Date: Wed, 30 Aug 2017 04:36:50 +0000 Subject: [PATCH] Bug 16204: Show friendly error message if trying to edit record which no longer exists To test: 1) Create a record 2) Click Edit -> Edit record. open this in another tab 3) Delete the record in the original tab 4) Refresh the edit form in the other tab. Notice the software error 5) Apply patch and refresh page 6) There should be a nice error message with the form fields and buttons hidden. Confirm links work as expected. Sponsored-by: Catalyst IT --- cataloguing/addbiblio.pl | 10 +++++++++- .../intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt | 13 +++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/cataloguing/addbiblio.pl b/cataloguing/addbiblio.pl index b72d71f..cfb112e 100755 --- a/cataloguing/addbiblio.pl +++ b/cataloguing/addbiblio.pl @@ -730,6 +730,14 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( } ); +if ($biblionumber){ + my $does_bib_exist = Koha::Biblios->find($biblionumber); + if (!defined $does_bib_exist){ + $biblionumber = undef; + $template->param( bib_doesnt_exist => 1 ); + } +} + if ($frameworkcode eq 'FA'){ # We need to grab and set some variables in the template for use on the additems screen $template->param( @@ -798,7 +806,7 @@ if ($parentbiblio) { } $is_a_modif = 0; - + if ($biblionumber) { $is_a_modif = 1; my $title = C4::Context->preference('marcflavour') eq "UNIMARC" ? $record->subfield('200', 'a') : $record->title; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt index 7a50096..4b4516d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt @@ -18,6 +18,12 @@ $("#loading").hide(); }); $(document).ready(function() { + + [% IF bib_doesnt_exist %] + $("#addbibliotabs").hide(); + $("#toolbar").hide(); + [% END %] + $('#addbibliotabs').tabs().bind('show.ui-tabs', function(e, ui) { $("#"+ui.panel.id+" input:eq(0)").focus(); }); @@ -540,6 +546,13 @@ function Changefwk() { [% END %] +[% IF bib_doesnt_exist %] +
+ The record you are trying to edit doesn't exist.
+ Add a new record or do a catalog search. +
+[% END %] + [% IF ( popup ) %] [% END %] -- 2.1.4