Bug 30952: Fix the 'keep_text' feature of the search bar
[koha-ffzg.git] / labels / spinelabel-print.pl
index 82c6d51..390002b 100755 (executable)
@@ -2,34 +2,31 @@
 
 # This file is part of Koha.
 #
-# Koha is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or (at your option) any later
-# version.
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
 #
-# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
-# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
 #
-# You should have received a copy of the GNU General Public License along with
-# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA  02111-1307 USA
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
 
-use warnings;
-use strict;
-use CGI;
-use C4::Auth;
-use C4::Output;
+use Modern::Perl;
+use CGI qw ( -utf8 );
+use C4::Auth qw( get_template_and_user );
+use C4::Output qw( output_html_with_http_headers );
 
 my $scheme = C4::Context->preference('SpineLabelFormat');
-my $query  = new CGI;
+my $query  = CGI->new;
 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
-    {   template_name   => "labels/spinelabel-print.tmpl",
+    {   template_name   => "labels/spinelabel-print.tt",
         query           => $query,
         type            => "intranet",
-        authnotrequired => 0,
         flagsrequired   => { catalogue => 1 },
-        debug           => 1,
     }
 );
 
@@ -48,10 +45,10 @@ $sth = $dbh->prepare($sql);
 $sth->execute($barcode);
 $item = $sth->fetchrow_hashref;
 
-if ( $item->{'itemnumber'} eq '' ) {
-  $template->param( 'Barcode' => $barcode );
-  $template->param( 'BarcodeNotFound' => 1 );
-}
+$template->param(
+    Barcode         => $barcode,
+    BarcodeNotFound => 1,
+) unless defined $item;
 
 my $body;
 
@@ -62,14 +59,14 @@ while ( my ( $key, $value ) = each(%$item) ) {
     $value = '' unless defined $value;
     my @characters = split( //, $value );
     my $charnum    = 1;
-    my $wordnum    = 1;
+    my $wordernumber    = 1;
     my $i          = 1;
     foreach my $char (@characters) {
         if ( $char ne ' ' ) {
-            $data->{$key} .= "<span class='character word$wordnum character$charnum' id='$key$i'>$char</span>";
+            $data->{$key} .= "<span class='character word$wordernumber character$charnum' id='$key$i'>$char</span>";
         } else {
             $data->{$key} .= "<span class='space character$charnum' id='$key$i'>$char</span>";
-            $wordnum++;
+            $wordernumber++;
             $charnum = 1;
         }
         $charnum++;
@@ -85,7 +82,11 @@ while ( my ( $key, $value ) = each(%$data) ) {
 
 $body = $scheme;
 
-$template->param( autoprint => C4::Context->preference("SpineLabelAutoPrint") );
-$template->param( content   => $body );
+$template->param(
+    autoprint         => C4::Context->preference("SpineLabelAutoPrint"),
+    content           => $body,
+    itemholdingbranch => $item->{holdingbranch},
+    itemhomebranch    => $item->{homebranch},
+);
 
 output_html_with_http_headers $query, $cookie, $template->output;