From d75c06c5a2ce989261d8d7884501875f3d48090d Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Wed, 23 Jan 2013 09:05:20 -0500 Subject: [PATCH] Bug 9458 - Add sorting to lists Test Plan: 1) Apply patch 2) View list in staff interface, try sorting by title, then author 3) Repeat 2 with same list in OPAC --- C4/VirtualShelves/Page.pm | 4 ++- .../prog/en/modules/virtualshelves/shelves.tt | 18 +++++++++++-- .../opac-tmpl/prog/en/modules/opac-shelves.tt | 27 ++++++++++++++++++++ 3 files changed, 45 insertions(+), 4 deletions(-) diff --git a/C4/VirtualShelves/Page.pm b/C4/VirtualShelves/Page.pm index 6a4d431..6880297 100644 --- a/C4/VirtualShelves/Page.pm +++ b/C4/VirtualShelves/Page.pm @@ -249,6 +249,7 @@ sub shelfpage { my $items; my $tag_quantity; my $sortfield = ( $sorton ? $sorton : 'title' ); + $sortfield = $query->param('sort') || $sortfield; ## Passed in sorting overrides default sorting ( $items, $totitems ) = GetShelfContents( $shelfnumber, $shelflimit, $shelfoffset, $sortfield ); for my $this_item (@$items) { my $biblionumber = $this_item->{'biblionumber'}; @@ -419,7 +420,7 @@ sub shelfpage { my $url = $type eq 'opac' ? "/cgi-bin/koha/opac-shelves.pl" : "/cgi-bin/koha/virtualshelves/shelves.pl"; my %qhash = (); - foreach (qw(display viewshelf sortfield)) { + foreach (qw(display viewshelf sortfield sort)) { $qhash{$_} = $query->param($_) if $query->param($_); } ( scalar keys %qhash ) and $url .= '?' . join '&', map { "$_=$qhash{$_}" } keys %qhash; @@ -459,6 +460,7 @@ sub shelfpage { barshelvesloop => $barshelves, pubshelves => $total->{pubtotal}, pubshelvesloop => $pubshelves, + sort => $query->param('sort'), ); output_html_with_http_headers $query, $cookie, $template->output; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt index 81fe513..61488cc 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt @@ -207,10 +207,22 @@ function placeHold () { [% IF ( itemsloop ) %] [% END %] [% UNLESS ( item_level_itypes ) %]Item type[% END %] - Title - Author + + [% IF sort == 'title' %][% END %] + Title + [% IF sort == 'title' %][% END %] + + + [% IF sort == 'author' %][% END %] + Author + [% IF sort == 'author' %][% END %] + Date added - Call number + + [% IF sort == 'itemcallnumber' %][% END %] + Call number + [% IF sort == 'itemcallnumber' %][% END %] +   [% FOREACH itemsloo IN itemsloop %] diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-shelves.tt b/koha-tmpl/opac-tmpl/prog/en/modules/opac-shelves.tt index 8f31917..3747bc1 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-shelves.tt +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-shelves.tt @@ -287,6 +287,33 @@ $(function() { Print list +
+ + + + +
+ [% IF ( manageshelf ) %] |
-- 1.7.2.5