From 1f92105c7da6889b72dbb407b707b9238bb4ac92 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 Signed-off-by: Claire Gravely --- 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