Bug 29609: Centralized code to build the link to a biblio detail page
[srvgit] / cataloguing / value_builder / unimarc_field_4XX.pl
index 9c2f024..0437660 100755 (executable)
@@ -22,15 +22,13 @@ use strict;
 #use warnings; FIXME - Bug 2505
 
 use CGI qw ( -utf8 );
-use C4::Output;
+use C4::Output qw( output_html_with_http_headers );
 use C4::Context;
-use C4::Search;
-use C4::Auth;
-use C4::Output;
+use C4::Search qw( new_record_from_zebra );
+use C4::Auth qw( get_template_and_user );
+use C4::Output qw( output_html_with_http_headers );
 
-use C4::Biblio;
-use C4::Koha;
-use MARC::Record;
+use C4::Biblio qw( GetMarcBiblio TransformMarcToKoha );
 
 use Koha::ItemTypes;
 
@@ -38,12 +36,12 @@ use Koha::SearchEngine;
 use Koha::SearchEngine::Search;
 
 sub plugin_parameters {
-    my ( $dbh, $record, $tagslib, $i, $tabloop ) = @_;
+    my ( $dbh, $record, $tagslib, $i ) = @_;
     return "";
 }
 
 sub plugin_javascript {
-    my ( $dbh, $record, $tagslib, $field_number, $tabloop ) = @_;
+    my ( $dbh, $record, $tagslib, $field_number ) = @_;
     my $function_name = $field_number;
     my $res           = "
     <script>
@@ -309,24 +307,6 @@ sub plugin {
         if   ( $marcrecord->field('010') ) {
             $subfield_value_y = $marcrecord->field('010')->subfield("a");
         }
-        # escape the 's
-        $subfield_value_9 =~ s/'/\\'/g;
-        $subfield_value_0 =~ s/'/\\'/g;
-        $subfield_value_a =~ s/'/\\'/g;
-        $subfield_value_c =~ s/'/\\'/g;
-        $subfield_value_d =~ s/'/\\'/g;
-        $subfield_value_e =~ s/'/\\'/g;
-        $subfield_value_h =~ s/'/\\'/g;
-        $subfield_value_i =~ s/'/\\'/g;
-        $subfield_value_l =~ s/'/\\'/g;
-        $subfield_value_n =~ s/'/\\'/g;
-        $subfield_value_o =~ s/'/\\'/g;
-        $subfield_value_p =~ s/'/\\'/g;
-        $subfield_value_t =~ s/'/\\'/g;
-        $subfield_value_u =~ s/'/\\'/g;
-        $subfield_value_v =~ s/'/\\'/g;
-        $subfield_value_x =~ s/'/\\'/g;
-        $subfield_value_y =~ s/'/\\'/g;
         $template->param(
             fillinput        => 1,
             index            => scalar $query->param('index') . "",
@@ -357,7 +337,7 @@ sub plugin {
         my $startfrom      = $query->param('startfrom');
         my $resultsperpage = $query->param('resultsperpage') || 20;
         my $orderby;
-        my $op = 'and';
+        my $op = 'AND';
         $search = 'kw:'.$search." $op mc-itemtype:".$itype if $itype;
         my $searcher = Koha::SearchEngine::Search->new({index => $Koha::SearchEngine::BIBLIOS_INDEX});
         my ( $errors, $results, $total_hits ) = $searcher->simple_search_compat($search, $startfrom * $resultsperpage, $resultsperpage );
@@ -459,8 +439,6 @@ sub plugin {
         }else{
             $to = $from + $resultsperpage ;
         }
-        my $defaultview =
-          'BiblioDefaultView' . C4::Context->preference('BiblioDefaultView');
 #         my $link="/cgi-bin/koha/cataloguing/value_builder/unimarc4XX.pl?op=do_search&q=$search_desc&resultsperpage=$resultsperpage&startfrom=$startfrom&search=$search";
 #           foreach my $sort (@sort_by){
 #             $link.="&sort_by=".$sort."&";
@@ -489,7 +467,6 @@ sub plugin {
             to             => $to,
             numbers        => \@numbers,
             search         => $search,
-            $defaultview   => 1,
             Search         => 0
         );
 
@@ -504,7 +481,7 @@ sub plugin {
             }
         );
 
-        my @itemtypes = Koha::ItemTypes->search;
+        my @itemtypes = Koha::ItemTypes->search->as_list;
 
         $template->param(    #classlist => $classlist,
             itypeloop    => \@itemtypes,