[Koha-patches] [PATCH] Add error message to serials-collection, reporting if an item record was not created on serial issue receipt due to duplicate barcode.

Ryan Higgins rch at liblime.com
Sun Jul 27 20:28:04 CEST 2008


---
 .../en/modules/serials/serials-collection.tmpl     |    3 +++
 serials/serials-collection.pl                      |    8 ++++++++
 serials/serials-edit.pl                            |    6 +++++-
 3 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tmpl
index f32c776..3b8acde 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tmpl
@@ -53,6 +53,9 @@ $(document).ready(function() {
 
 <!-- TMPL_UNLESS name="popup" -->
 	<!-- TMPL_INCLUDE NAME="serials-toolbar.inc" -->
+<!--TMPL_IF Name="barcode_not_unique" --> <!-- coming on redirect from serials-edit.pl -->
+<div class="error"><h3 class="error">Error</h3><p> Barcode Not Unique For serial issue: <!--TMPL_VAR Name="rcv_error_param"--></p><p class="error">Item record not created.</p></div>
+<!--/TMPL_IF -->
 
 	<h1>Serial Collection information for  <i><!-- TMPL_VAR name="bibliotitle" --></i></h1>
 <!-- /TMPL_UNLESS -->
diff --git a/serials/serials-collection.pl b/serials/serials-collection.pl
index ca58f98..ef9f856 100755
--- a/serials/serials-collection.pl
+++ b/serials/serials-collection.pl
@@ -31,6 +31,7 @@ use C4::Context;
 
 my $query = new CGI;
 my $op = $query->param('op');
+
 my $dbh = C4::Context->dbh;
 
 my $sth;
@@ -46,6 +47,13 @@ my ($template, $loggedinuser, $cookie);
                             });
 my $biblionumber = $query->param('biblionumber');
 my @subscriptionid = $query->param('subscriptionid');
+my $rcv_error = $query->param('rcv_error');
+
+#pass errors to page if we're coming from serials-edit.pl
+if($rcv_error) {
+    $template->param( $rcv_error => 1, 
+       rcv_error_param => $query->param('rcv_error_param') ) ;
+}
 
 my $subscriptiondescs ;
 my $subscriptions;
diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl
index d54912e..7d514c0 100755
--- a/serials/serials-edit.pl
+++ b/serials/serials-edit.pl
@@ -90,6 +90,7 @@ if (scalar(@subscriptionids)==1 && index($subscriptionids[0],",")>0){
   @subscriptionids =split /,/,$subscriptionids[0];
 }
 my $redirectstring;
+my $url_error_str;
 # If user comes from subscription details
 unless (@serialids){
   foreach my $subscriptionid (@subscriptionids){
@@ -239,11 +240,12 @@ if ($op eq 'serialchangestatus') {
             # check for item barcode # being unique
             my $exists = GetItemnumberFromBarcode($record->subfield($tagfield,$tagsubfield)) if ($record->subfield($tagfield,$tagsubfield));
   #           push @errors,"barcode_not_unique" if($exists);
-            $template->param("barcode_not_unique" => 1,'errserialseq'=>$serialseqs[$index]);
             # if barcode exists, don't create, but report The problem.
 			unless ($exists){
               my ($biblionumber,$bibitemnum,$itemnumber) = AddItemFromMarc($record,$itemhash{$item}->{'bibnum'});
               AddItem2Serial($itemhash{$item}->{'serial'},$itemnumber);
+              $url_error_str = "rcv_error=barcode_not_unique&rcv_error_param=$serialseqs[$index]";
+              $template->param("barcode_not_unique" => 1,'errserialseq'=>$serialseqs[$index]);
             }
           } else {
             #modify item
@@ -266,6 +268,8 @@ if ($op eq 'serialchangestatus') {
      	$hashsubscription{$_}=1;
 	 }
      $redirect.=join("&",map{"subscriptionid=".$_} sort keys %hashsubscription);
+     $redirect .= '&' . $url_error_str if($url_error_str);
+     warn $redirect;
     print $query->redirect("$redirect");
 }
 
-- 
1.5.5.GIT




More information about the Koha-patches mailing list