From b36ac359587491cb166cd02ca0c22afaa404598a Mon Sep 17 00:00:00 2001 From: senator Date: Tue, 15 Feb 2011 12:19:11 -0500 Subject: [PATCH] "format" aka item_type (?) search working, I think --- .../perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm | 6 +++- .../default/opac/parts/format_selector.tt2 | 38 ++++------------------ .../web/templates/default/opac/parts/header.tt2 | 38 ++++++++++++++++++++++ .../web/templates/default/opac/parts/marc_misc.tt2 | 33 ------------------- .../web/templates/default/opac/parts/searchbar.tt2 | 2 +- 5 files changed, 50 insertions(+), 67 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm index 4f78497e2d..ad9526a992 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm @@ -20,6 +20,7 @@ sub load_rresults { $ctx->{page} = 'rresult'; my $page = $cgi->param('page') || 0; + my $item_type = $cgi->param('item_type'); my $facet = $cgi->param('facet'); my $query = $cgi->param('query'); my $limit = $cgi->param('limit') || 10; # TODO user settings @@ -28,7 +29,10 @@ sub load_rresults { my $depth = defined $cgi->param('depth') ? $cgi->param('depth') : $ctx->{find_aou}->($loc)->ou_type->depth; - my $args = {limit => $limit, offset => $page * $limit, org_unit => $loc, depth => $depth}; + my $args = { + limit => $limit, offset => $page * $limit, + org_unit => $loc, depth => $depth, $item_type ? (item_type => [$item_type]) : () + }; $query = "$query $facet" if $facet; # TODO my $results; diff --git a/Open-ILS/web/templates/default/opac/parts/format_selector.tt2 b/Open-ILS/web/templates/default/opac/parts/format_selector.tt2 index 5c3904c727..7ebd072ab8 100644 --- a/Open-ILS/web/templates/default/opac/parts/format_selector.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/format_selector.tt2 @@ -1,35 +1,10 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +[% FOR o IN item_types %] + +[%- END %] - diff --git a/Open-ILS/web/templates/default/opac/parts/header.tt2 b/Open-ILS/web/templates/default/opac/parts/header.tt2 index 4f72639434..f887c44cc7 100644 --- a/Open-ILS/web/templates/default/opac/parts/header.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/header.tt2 @@ -3,4 +3,42 @@ USE CGI; USE EGI18N; SET DATE_FORMAT = '%m/%d/%Y'; + + item_types = [ # XXX KCLS-specific + {'code' => 'a', 'name' => 'Book', 'image' => 'media_book.jpg'}, + {'code' => 'i', 'name' => 'Book on cassette', 'image' => 'media_bookoncasset.jpg'}, + {'code' => 'n', 'name' => 'Book on CD', 'image' => 'media_bookoncd.jpg'}, + {'code' => 'x', 'name' => 'Download music', 'image' => 'media_downloadmusic.jpg'}, + {'code' => 'y', 'name' => 'Download video', 'image' => 'media_downloadvideo.jpg'}, + {'code' => 'h', 'name' => 'DVD', 'image' => 'media_dvd.jpg'}, + {'code' => 'w', 'name' => 'eBook - Audio', 'image' => 'media_eaudio.jpg'}, + {'code' => 'v', 'name' => 'eBook - Text', 'image' => 'media_ebooktext.jpg'}, + {'code' => 'e', 'name' => 'Equipment', 'image' => 'media_equipment.jpg'}, + {'code' => 'f', 'name' => 'Films', 'image' => 'media_films.jpg'}, + {'code' => 'o', 'name' => 'Kit', 'image' => 'media_kit.jpg'}, + {'code' => 'q', 'name' => 'Large print', 'image' => 'media_largeprint.jpg'}, + {'code' => 'b', 'name' => 'Magazine', 'image' => 'media_magazines.jpg'}, + {'code' => 'd', 'name' => 'Microform', 'image' => 'media_microform.jpg'}, + {'code' => 'k', 'name' => 'Music cassette', 'image' => 'media_musiccassette.jpg'}, + {'code' => 'j', 'name' => 'Music CD', 'image' => 'media_musiccd.jpg'}, + {'code' => 'l', 'name' => 'Music LP', 'image' => 'media_musicrecord.jpg'}, + {'code' => 'p', 'name' => 'Newspaper', 'image' => 'media_newspaper.jpg'}, + {'code' => 't', 'name' => 'Online', 'image' => 'media_online.jpg'}, + {'code' => 'u', 'name' => 'Player', 'image' => 'media_eaudio.jpg'}, + {'code' => 'c', 'name' => 'Printed music / scores', 'image' => 'media_printedmusic.jpg'}, + {'code' => '2', 'name' => 'Read along with cassette', 'image' => 'media_cassettewithbook.jpg'}, + {'code' => '5', 'name' => 'Read along with CD', 'image' => 'media_cdwithbook.jpg'}, + {'code' => 'm', 'name' => 'Software', 'image' => 'media_software.jpg'}, + {'code' => 'g', 'name' => 'Video', 'image' => ''}, + {'code' => 'r', 'name' => '3-D Object', 'image' => 'media_3dobject.jpg'}, + {'code' => 'z', 'name' => 'Map', 'image' => 'media_map.jpg'}, + {'code' => 's', 'name' => 'Slide set', 'image' => 'media_slide.jpg'} + ]; + + icon_by_mattype = {}; + FOR o IN item_types; + code = o.code; + icon_by_mattype.$code = o.image; + END; + -%] diff --git a/Open-ILS/web/templates/default/opac/parts/marc_misc.tt2 b/Open-ILS/web/templates/default/opac/parts/marc_misc.tt2 index f919ed8655..8f561969c9 100644 --- a/Open-ILS/web/templates/default/opac/parts/marc_misc.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/marc_misc.tt2 @@ -1,35 +1,4 @@ [% - icon_by_mattype = { # XXX KCLS-specific - "a" => "media_book.jpg", - "b" => "media_magazines.jpg", - "c" => "media_printedmusic.jpg", - "d" => "media_microform.jpg", - "e" => "media_equipment.jpg", - "f" => "media_films.jpg", - "g" => "", - "h" => "media_dvd.jpg", - "i" => "media_bookoncassette.jpg", - "j" => "media_musiccd.jpg", - "k" => "media_musiccassette.jpg", - "l" => "media_musicrecord.jpg", - "m" => "media_software.jpg", - "n" => "media_bookoncd.jpg", - "o" => "media_kit.jpg", - "p" => "media_newspaper.jpg", - "q" => "media_largeprint.jpg", - "r" => "media_3dobject.jpg", - "s" => "media_slide.jpg", - "t" => "media_online.jpg", - "u" => "media_eaudio.jpg", - "v" => "media_ebooktext.jpg", - "w" => "media_eaudio.jpg", - "x" => "media_downloadmusic.jpg", - "y" => "media_downloadvideo.jpg", - "z" => "media_map.jpg", - "2" => "media_cassettewithbook.jpg", - "5" => "media_cdwithbook.jpg" - }; - # Extract MARC fields from XML # get_marc_attrs( { marc_xml => doc } ) BLOCK get_marc_attrs; @@ -60,7 +29,5 @@ mattype = attrs.mattype; args.format = ctx.find_citm(mattype).value; args.format_icon = icon_by_mattype.$mattype; - END; - %] diff --git a/Open-ILS/web/templates/default/opac/parts/searchbar.tt2 b/Open-ILS/web/templates/default/opac/parts/searchbar.tt2 index 7156e5551b..24e56eba31 100644 --- a/Open-ILS/web/templates/default/opac/parts/searchbar.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/searchbar.tt2 @@ -39,7 +39,7 @@ - [% INCLUDE "default/opac/parts/format_selector.tt2" %] + [% INCLUDE "default/opac/parts/format_selector.tt2" value=CGI.param("item_type") %] -- 2.11.0