From aca56e2f6e44b4158fe5184a82f00054fac25e51 Mon Sep 17 00:00:00 2001 From: senator Date: Tue, 8 Feb 2011 18:12:05 -0500 Subject: [PATCH] hey, maybe I should commit sometime today results page partly working. woof. --- Open-ILS/web/css/skin/default/opac/style.css | 4 +- .../default/opac/parts/libselect.tt2 | 2 +- .../default/opac/parts/marc_misc.tt2 | 52 ++++++++++++ .../default/opac/parts/result/header.tt2 | 45 +++++++--- .../default/opac/parts/result/table.tt2 | 83 ++++++++++--------- .../web/templates/default/opac/results.tt2 | 15 +++- 6 files changed, 143 insertions(+), 58 deletions(-) create mode 100644 Open-ILS/web/templates/default/opac/parts/marc_misc.tt2 diff --git a/Open-ILS/web/css/skin/default/opac/style.css b/Open-ILS/web/css/skin/default/opac/style.css index ef6f49d717..1dc531fa6b 100644 --- a/Open-ILS/web/css/skin/default/opac/style.css +++ b/Open-ILS/web/css/skin/default/opac/style.css @@ -657,7 +657,7 @@ div.select-wrapper:hover { padding-left:15px; } - +.result_table_subtable { width: 100%; border-collapse: collapse; border: 0; } @@ -891,4 +891,4 @@ div.select-wrapper:hover { } #rdetail_copy_info_table { font-size: 8pt; } #rdetail_copy_info_table td { padding: 3px; } - +.search_page_nav_link { cursor: pointer; } diff --git a/Open-ILS/web/templates/default/opac/parts/libselect.tt2 b/Open-ILS/web/templates/default/opac/parts/libselect.tt2 index f41d0e420b..59cdfa6cb6 100644 --- a/Open-ILS/web/templates/default/opac/parts/libselect.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/libselect.tt2 @@ -24,7 +24,7 @@ - [% PROCESS build_org_selector name='loc' %] + [% PROCESS build_org_selector name='loc' value=loc %] doc } ) + BLOCK get_marc_attrs; + xml = args.marc_xml; + args.isbn = xml.findnodes('//*[@tag="020"]/*[@code="a"]').shift.textContent; + args.upc = xml.findnodes('//*[@tag="024"]/*[@code="a"]').textContent; + args.issn = xml.findnodes('//*[@tag="022"]/*[@code="a"]').textContent; + args.title = xml.findnodes('//*[@tag="245"]/*[@code="a"]').textContent; + args.author = xml.findnodes('//*[@tag="100"]/*[@code="a"]').textContent; + args.publisher = xml.findnodes('//*[@tag="260"]/*[@code="b"]').textContent; + args.pubdate = xml.findnodes('//*[@tag="260"]/*[@code="c"]').textContent; + # clean up the ISBN + args.isbn_clean = args.isbn.replace('\ .*', ''); + + # KCLS-specific stuff; needs to change + args.mattype = xml.findnodes('//*[@tag="998"]/*[@code="d"]').textContent; + args.kcls_cn = xml.findnodes('//*[@tag="092" or @tag="099"]/*').textContent; + + END; + + 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" + }; +%] diff --git a/Open-ILS/web/templates/default/opac/parts/result/header.tt2 b/Open-ILS/web/templates/default/opac/parts/result/header.tt2 index 07e1382485..c7e2f587a5 100644 --- a/Open-ILS/web/templates/default/opac/parts/result/header.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/result/header.tt2 @@ -1,36 +1,55 @@ +[% q = query | url; + np_link = '?query=' _ q; + IF loc; + np_link = np_link _ "&loc=" _ loc; + END; + IF depth or depth == 0; + np_link = np_link _ "&depth=" _ depth; + END; + ctx.result_start = 1 + ctx.page_size * page; + ctx.result_stop = 1 + ctx.page_size * (page + 1); + IF ctx.result_stop > ctx.hit_count; ctx.result_stop = ctx.hit_count; END; +%]
- diff --git a/Open-ILS/web/templates/default/opac/parts/result/table.tt2 b/Open-ILS/web/templates/default/opac/parts/result/table.tt2 index 0d2a56906a..ab5b9e6cf8 100644 --- a/Open-ILS/web/templates/default/opac/parts/result/table.tt2 +++ b/Open-ILS/web/templates/default/opac/parts/result/table.tt2 @@ -1,7 +1,7 @@ - +[% PROCESS "default/opac/parts/marc_misc.tt2"; + SET result_count = ctx.result_start; %]
-
Search Results - [% l("Results") %] - -  - - -  [% l("of") %] - + + [% l("Results") %] + [% ctx.result_start %] +  - + [% ctx.result_stop %] +  [% l("of") %] + [% ctx.hit_count %] (page + [% page + 1 %] +  [% l("of") %] + [% page_count %]) - -  [% l("of") %] - ) - + + [% IF page > 0 %] + href="[% np_link _ '&page=' _ (page - 1) %]" + title='[% l("Previous page") %]'> Previous + [% END %] + [% IF (page + 1) < page_count %] + href="[% np_link _ '&page=' _ (page + 1) %]" + title='[% l("Next page") %]'> Next + [% END %]
@@ -14,63 +14,64 @@ - -
- + [% FOR rec IN ctx.records; + attrs = {marc_xml => rec.marc_xml}; + PROCESS get_marc_attrs args=attrs %] + + -
+ + name="results_row_count">[% + result_count; result_count = result_count + 1 + %]. + [% END %]
1. - - Image of itemImage of item
+ src='[% ctx.media_prefix %]/opac/extras/ac/jacket/small/[% ident %]' />
+ [% END %]
-
- - +
- + [% attrs.author %]    - + [% attrs.pubdate %]
- + - + - + - + - @@ -182,7 +187,6 @@ -
- Call number: + Call number: + [% args.kcls_cn %]
Publisher: - - [% attrs.publisher; %]
ISBN: - - [% attrs.isbn %]
@@ -99,7 +100,7 @@
+ style='padding-left: 10px;'> | | @@ -115,8 +116,8 @@ class='result_table_format_cell' align="center" width="1" style="padding:0px 10px;"> Format - + [% l("Match Score: ") %] @@ -165,13 +166,17 @@
- Format + [% key = attrs.mattype; + format_desc = ctx.find_citm(key).value; + icon_filename = icon_by_mattype.$key; + IF icon_filename; %] + [% format_desc %] + [% END %]
@@ -193,15 +197,16 @@
+
- +
@@ -222,7 +227,7 @@ - [% l("Results") %] + [% l("Results") %]  - diff --git a/Open-ILS/web/templates/default/opac/results.tt2 b/Open-ILS/web/templates/default/opac/results.tt2 index df39f4f457..c24eb35efb 100644 --- a/Open-ILS/web/templates/default/opac/results.tt2 +++ b/Open-ILS/web/templates/default/opac/results.tt2 @@ -1,12 +1,21 @@ -[% WRAPPER "default/opac/parts/base.tt2"; +[% USE CGI; + USE POSIX; + + WRAPPER "default/opac/parts/base.tt2"; INCLUDE "default/opac/parts/topnav.tt2"; - ctx.page_title = "Search Results" %] + ctx.page_title = "Search Results"; + + page = CGI.param('page') || 0; + query = CGI.param('query'); + loc = CGI.param('loc'); + page_count = POSIX.ceil(ctx.hit_count / ctx.page_size); +%]
[% INCLUDE "default/opac/parts/utils.tt2" %] [% INCLUDE "default/opac/parts/searchbar.tt2" %]
-
+