Bugzilla – Attachment 39713 Details for
Bug 10938
item columns in different order
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
[PASSED QA] Bug 10938: Item columns displayed in random order - OPAC
PASSED-QA-Bug-10938-Item-columns-displayed-in-rand.patch (text/plain), 6.24 KB, created by
Katrin Fischer
on 2015-05-31 19:41:26 UTC
(
hide
)
Description:
[PASSED QA] Bug 10938: Item columns displayed in random order - OPAC
Filename:
MIME Type:
Creator:
Katrin Fischer
Created:
2015-05-31 19:41:26 UTC
Size:
6.24 KB
patch
obsolete
>From 4c0063d7f174508dec33f7c9eebafc6f4217cf48 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@biblibre.com> >Date: Tue, 21 Apr 2015 16:24:15 +0200 >Subject: [PATCH] [PASSED QA] Bug 10938: Item columns displayed in random order > - OPAC > >Same as before for the OPAC. > >Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> >Good result, no errors > >Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> >--- > .../bootstrap/en/modules/opac-MARCdetail.tt | 12 ++-- > opac/opac-MARCdetail.pl | 64 ++++++++-------------- > 2 files changed, 30 insertions(+), 46 deletions(-) > >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-MARCdetail.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-MARCdetail.tt >index eb9e0e1..3220b88 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-MARCdetail.tt >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-MARCdetail.tt >@@ -136,15 +136,15 @@ > <table id="items" class="table table-bordered table-condensed table-striped"> > <caption>Holdings</caption> > <tr> >- [% FOREACH item_header_loo IN item_header_loop %] >- <th> >- [% item_header_loo.header_value %] >- </th> >+ [% FOREACH header IN item_header_loop %] >+ <th>[% header %]</th> > [% END %] > </tr> >- [% FOREACH item_loo IN item_loop %] >+ [% FOREACH item IN item_loop %] > <tr> >- [% item_loo.item_value %] >+ [% FOREACH sf_code IN item_subfield_codes %] >+ <td>[% item.$sf_code %]</td> >+ [% END %] > </tr> > [% END %] > </table> >diff --git a/opac/opac-MARCdetail.pl b/opac/opac-MARCdetail.pl >index 6a5e8a6..afac5d7 100755 >--- a/opac/opac-MARCdetail.pl >+++ b/opac/opac-MARCdetail.pl >@@ -56,7 +56,7 @@ use C4::Reserves; > use C4::Members; > use C4::Acquisition; > use C4::Koha; >-use List::MoreUtils qw/any/; >+use List::MoreUtils qw( any uniq ); > > my $query = new CGI; > >@@ -253,67 +253,50 @@ for ( my $tabloop = 0 ; $tabloop <= 9 ; $tabloop++ ) { > my @fields = $record->fields(); > my %witness > ; #---- stores the list of subfields used at least once, with the "meaning" of the code >-my @big_array; >+my @item_subfield_codes; >+my @item_loop; > foreach my $field (@fields) { > next if ( $field->tag() < 10 ); > next if ( ( $field->tag() eq $tag_itemnumber ) && > ( any { $field->subfield($subtag_itemnumber) eq $_ } > @items2hide) ); > my @subf = $field->subfields; >- my %this_row; >+ my $item; > > # loop through each subfield > for my $i ( 0 .. $#subf ) { > my $sf_def = $tagslib->{ $field->tag() }->{ $subf[$i][0] }; > next if ( ($sf_def->{tab}||0) != 10 ); > next if ( ($sf_def->{hidden}||0) > 0 ); >+ push @item_subfield_codes, $subf[$i][0]; > $witness{ $subf[$i][0] } = $sf_def->{lib}; > > if ( $sf_def->{isurl} ) { >- $this_row{ $subf[$i][0] } = "<a href=\"$subf[$i][1]\">$subf[$i][1]</a>"; >+ $item->{ $subf[$i][0] } = "<a href=\"$subf[$i][1]\">$subf[$i][1]</a>"; > } > elsif ( $sf_def->{kohafield} eq "biblioitems.isbn" ) { >- $this_row{ $subf[$i][0] } = $subf[$i][1]; >+ $item->{ $subf[$i][0] } = $subf[$i][1]; > } > else { >- $this_row{ $subf[$i][0] } = GetAuthorisedValueDesc( $field->tag(), $subf[$i][0], >+ $item->{ $subf[$i][0] } = GetAuthorisedValueDesc( $field->tag(), $subf[$i][0], > $subf[$i][1], '', $tagslib, '', 'opac' ); > } > } >- if (%this_row) { >- push( @big_array, \%this_row ); >- } >+ push @item_loop, $item if $item; > } > my ( $holdingbrtagf, $holdingbrtagsubf ) = > &GetMarcFromKohaField( "items.holdingbranch", $itemtype ); >-@big_array = >- sort { ($a->{$holdingbrtagsubf}||'') cmp ($b->{$holdingbrtagsubf}||'') } @big_array; >- >-#fill big_row with missing datas >-foreach my $subfield_code ( keys(%witness) ) { >- for ( my $i = 0 ; $i <= $#big_array ; $i++ ) { >- $big_array[$i]{$subfield_code} = " " >- unless ( $big_array[$i]{$subfield_code} ); >- } >-} >- >-# now, construct template ! >-my @item_value_loop; >-my @header_value_loop; >-for ( my $i = 0 ; $i <= $#big_array ; $i++ ) { >- my $items_data; >- foreach my $subfield_code ( keys(%witness) ) { >- $items_data .= "<td>" . $big_array[$i]{$subfield_code} . "</td>"; >- } >- my %row_data; >- $row_data{item_value} = $items_data; >- push( @item_value_loop, \%row_data ); >-} >- >-foreach my $subfield_code ( keys(%witness) ) { >- my %header_value; >- $header_value{header_value} = $witness{$subfield_code}; >- push( @header_value_loop, \%header_value ); >+@item_loop = >+ sort { ($a->{$holdingbrtagsubf}||'') cmp ($b->{$holdingbrtagsubf}||'') } @item_loop; >+ >+@item_subfield_codes = uniq @item_subfield_codes; >+# fill item info >+my @item_header_loop; >+for my $subfield_code ( @item_subfield_codes ) { >+ push @item_header_loop, $witness{$subfield_code}; >+ for my $item_data ( @item_loop ) { >+ $item_data->{$subfield_code} ||= " " >+ } > } > > if(C4::Context->preference("ISBD")) { >@@ -346,9 +329,10 @@ if (my $search_for_title = C4::Context->preference('OPACSearchForTitleIn')){ > } > > $template->param( >- item_loop => \@item_value_loop, >- item_header_loop => \@header_value_loop, >- biblionumber => $biblionumber, >+ item_loop => \@item_loop, >+ item_header_loop => \@item_header_loop, >+ item_subfield_codes => \@item_subfield_codes, >+ biblionumber => $biblionumber, > ); > > output_html_with_http_headers $query, $cookie, $template->output; >-- >1.9.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 10938
:
21417
|
21418
|
38268
|
38269
|
39248
|
39249
|
39713
|
39714
|
39715