X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=opac%2Fopac-authoritiesdetail.pl;h=6610dfda5c8e8662d985840b77b0a977183d3759;hb=465e58b5947ad345bff858c459434c3c665a6b96;hp=be4beca2bc5460075854df9ef648bda02fb33b9b;hpb=873a3cb9bc265be3a5f95e5c481403eb311bffbd;p=koha_gimpoz diff --git a/opac/opac-authoritiesdetail.pl b/opac/opac-authoritiesdetail.pl index be4beca2bc..6610dfda5c 100755 --- a/opac/opac-authoritiesdetail.pl +++ b/opac/opac-authoritiesdetail.pl @@ -23,6 +23,7 @@ opac-authoritiesdetail.pl : script to show an authority in MARC format =head1 SYNOPSIS +=cut =head1 DESCRIPTION @@ -33,8 +34,6 @@ parameters tables. =head1 FUNCTIONS -=over 2 - =cut use strict; @@ -63,7 +62,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( template_name => "opac-authoritiesdetail.tmpl", query => $query, type => "opac", - authnotrequired => 1, + authnotrequired => ( C4::Context->preference("OpacPublic") ? 1 : 0 ), debug => 1, } ); @@ -121,6 +120,9 @@ my @fields = $record->fields(); foreach my $field (@fields) { my @subfields_data; + # skip UNIMARC fields <200, they are useless for a patron + next if C4::Context->preference('MarcFlavour') eq 'UNIMARC' && $field->tag() <200; + # if tag <10, there's no subfield, use the "@" trick if ( $field->tag() < 10 ) { next if ( $tagslib->{ $field->tag() }->{'@'}->{hidden} ); @@ -138,6 +140,8 @@ foreach my $field (@fields) { for my $i ( 0 .. $#subf ) { $subf[$i][0] = "@" unless $subf[$i][0]; next if ( $tagslib->{ $field->tag() }->{ $subf[$i][0] }->{hidden} ); + # skip useless subfields (for patrons) + next if $subf[$i][0] =~ /7|8|9/; my %subfield_data; $subfield_data{marc_lib} = $tagslib->{ $field->tag() }->{ $subf[$i][0] }->{lib}; @@ -164,18 +168,16 @@ foreach my $field (@fields) { push( @loop_data, \%tag_data ); } } -$template->param( "0XX" => \@loop_data ); - -my $authtypes = getauthtypes; -my @authtypesloop; -foreach my $thisauthtype ( keys %$authtypes ) { - my $selected = 1 if $thisauthtype eq $authtypecode; - my %row = ( - value => $thisauthtype, - selected => $selected, +$template->param( "Tab0XX" => \@loop_data ); + +my $authtypes = getauthtypes(); +my @authtypesloop = (); +foreach my $thisauthtype ( keys %{$authtypes} ) { + push @authtypesloop, + { value => $thisauthtype, + selected => $thisauthtype eq $authtypecode, authtypetext => $authtypes->{$thisauthtype}{'authtypetext'}, - ); - push @authtypesloop, \%row; + }; } $template->param(