Put patron Privilege 'updatecharges' to use on fines pages
[koha.git] / catalogue / MARCdetail.pl
index 0e8fcb8..12c6544 100755 (executable)
@@ -44,7 +44,7 @@ the items attached to the biblio
 =cut
 
 use strict;
-require Exporter;
+
 use C4::Auth;
 use C4::Context;
 use C4::Output;
@@ -52,6 +52,7 @@ use CGI;
 use C4::Koha;
 use MARC::Record;
 use C4::Biblio;
+use C4::Items;
 use C4::Acquisition;
 use C4::Serials;    #uses getsubscriptionsfrombiblionumber GetSubscriptionsFromBiblionumber
 
@@ -69,7 +70,7 @@ my $subscriptionid = $query->param('subscriptionid');
 my $tagslib = &GetMarcStructure(1,$frameworkcode);
 
 my $record = GetMarcBiblio($biblionumber);
-
+my $biblio = GetBiblioData($biblionumber);
 # open template
 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
     {
@@ -84,7 +85,8 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 
 #count of item linked
 my $itemcount = GetItemsCount($biblionumber);
-$template->param( count => $itemcount);
+$template->param( count => $itemcount,
+                                       bibliotitle => $biblio->{title}, );
 
 #Getting the list of all frameworks
 my $queryfwk =
@@ -146,7 +148,7 @@ for ( my $tabloop = 0 ; $tabloop <= 10 ; $tabloop++ ) {
             next
               if (
                 $tagslib->{ $fields[$x_i]->tag() }->{'@'}->{tab} ne $tabloop );
-            next if ( $tagslib->{ $fields[$x_i]->tag() }->{'@'}->{hidden} );
+            next if ( $tagslib->{ $fields[$x_i]->tag() }->{'@'}->{hidden}==(-7|-4|-3|-2|2|3|5|8));
             my %subfield_data;
             $subfield_data{marc_lib} =
               $tagslib->{ $fields[$x_i]->tag() }->{'@'}->{lib};
@@ -167,12 +169,9 @@ for ( my $tabloop = 0 ; $tabloop <= 10 ; $tabloop++ ) {
                     ne $tabloop );
                 next
                   if ( $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }
-                    ->{hidden} );
+                    ->{hidden}==(-7|-4|-3|-2|2|3|5|8));
                 my %subfield_data;
-                $subfield_data{short_desc} = substr(
-                    $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }->{lib},
-                    0, 20
-                );
+                $subfield_data{short_desc} = $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }->{lib};
                 $subfield_data{long_desc} =
                   $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }->{lib};
                 $subfield_data{link} =
@@ -182,15 +181,15 @@ for ( my $tabloop = 0 ; $tabloop <= 10 ; $tabloop++ ) {
                 if ( $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }
                     ->{isurl} )
                 {
-                    $subfield_data{marc_value} =
-                      "<a href=\"$subf[$i][1]\">$subf[$i][1]</a>";
+                    $subfield_data{marc_value} = $subf[$i][1];
+                                       $subfield_data{is_url} = 1;
                 }
                 elsif ( $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }
                     ->{kohafield} eq "biblioitems.isbn" )
                 {
 
 #                    warn " tag : ".$tagslib->{$fields[$x_i]->tag()}." subfield :".$tagslib->{$fields[$x_i]->tag()}->{$subf[$i][0]}. "ISBN : ".$subf[$i][1]."PosttraitementISBN :".DisplayISBN($subf[$i][1]);
-                    $subfield_data{marc_value} = DisplayISBN( $subf[$i][1] );
+                    $subfield_data{marc_value} = $subf[$i][1];
                 }
                 else {
                     if ( $tagslib->{ $fields[$x_i]->tag() }->{ $subf[$i][0] }
@@ -200,7 +199,7 @@ for ( my $tabloop = 0 ; $tabloop <= 10 ; $tabloop++ ) {
                     }
                     $subfield_data{marc_value} =
                       GetAuthorisedValueDesc( $fields[$x_i]->tag(),
-                        $subf[$i][0], $subf[$i][1], '', $tagslib);
+                        $subf[$i][0], $subf[$i][1], '', $tagslib) || $subf[$i][1];
 
                 }
                 $subfield_data{marc_subfield} = $subf[$i][0];
@@ -223,7 +222,10 @@ for ( my $tabloop = 0 ; $tabloop <= 10 ; $tabloop++ ) {
                 }
                 else {
                     $tag_data{tag} =
-                        $fields[$x_i]->tag() . ' -'
+                        $fields[$x_i]->tag() 
+                      . ' '
+                      . C4::Koha::display_marc_indicators($fields[$x_i])
+                      . ' - '
                       . $tagslib->{ $fields[$x_i]->tag() }->{lib};
                 }
             }
@@ -253,11 +255,11 @@ foreach my $field (@fields) {
     # loop through each subfield
     for my $i ( 0 .. $#subf ) {
         next if ( $tagslib->{ $field->tag() }->{ $subf[$i][0] }->{tab} ne 10 );
-        next if ( $tagslib->{ $field->tag() }->{ $subf[$i][0] }->{hidden} );
+        next if ( $tagslib->{ $field->tag() }->{ $subf[$i][0] }->{hidden}==(-7|-4|-3|-2|2|3|5|8));
         $witness{ $subf[$i][0] } =
         $tagslib->{ $field->tag() }->{ $subf[$i][0] }->{lib};
         $this_row{ $subf[$i][0] } = GetAuthorisedValueDesc( $field->tag(),
-                        $subf[$i][0], $subf[$i][1], '', $tagslib);
+                        $subf[$i][0], $subf[$i][1], '', $tagslib) || $subf[$i][1];
     }
     if (%this_row) {
         push( @big_array, \%this_row );