3 PROCESS "opac/parts/header.tt2";
4 PROCESS "opac/parts/misc_util.tt2";
5 PROCESS "opac/parts/org_selector.tt2";
6 WRAPPER "opac/parts/base.tt2";
7 INCLUDE "opac/parts/topnav.tt2";
9 ctx.page_title = l("Browse Courses");
10 blimit = CGI.param('blimit') || ctx.opac_hits_per_page || 10;
11 display_idx = CGI.param('didx') || ctx.match_idx || 0;
15 depart_list = ['blimit', 'bterm', 'bpivot'];
16 ctx.metalinks.push('<meta name="robots" content="noindex,follow">');
19 <h2 class="sr-only">[% l('Course Browse') %]</h2>
20 <div id="search-wrapper">
23 <span class="search_catalog_lbl"><a href="[% mkurl(ctx.opac_root _ '/home', {}, depart_list) %]">[% l('Basic Search') %]</a></span>
24 <span class="adv_search_catalog_lbl"><a href="[% mkurl(ctx.opac_root _ '/advanced', {}, depart_list) %]"
25 id="home_adv_search_link">[%l('Advanced Search')%]</a></span>
26 <span class="browse_the_catalog_lbl"><a href="[% mkurl(ctx.opac_root _ '/browse') %]">[%
27 l('Browse the Catalog')%]</a></span>
28 <span class="browse_the_catalog_lbl"><a href="[% mkurl(ctx.opac_root _ '/course_search') %]">[%
29 l('Search Courses')%]</a></span>
31 <span class="browse_the_catalog_lbl mobile_hide">[% l('Browse for Courses') %]</span>
32 [% INCLUDE 'opac/parts/cart.tt2' %]
37 <div id="content-wrapper">
38 <div id="main-content">
39 <div id="browse-for-courses">
40 <div id="browse-controls" class='searchbar'>
41 <form method="get" onsubmit="$('browse-submit-spinner').className = ''; return true">
42 <input type="hidden" name="blimit"
43 value="[% blimit | html %]" />
44 [% control_qtype = INCLUDE "opac/parts/course_search/qtype_selector.tt2"
45 id="browse-search-class" browse_only=1 plural=1 %]
47 [% control_bterm = BLOCK %]
48 <input type="text" name="bterm" id="browse-term"
49 aria-label="[% l('Browse term') %]"
50 value="[% CGI.param('bterm') | html %]">
51 [% END; #control_bterm BLOCK %]
53 [% control_locg = INCLUDE build_org_selector id='browse-context'
54 show_log_groups=1 arialabel=l('Select owning Library') %]
56 [% l('Browse for [_1] starting with [_2] in [_3]',
57 control_qtype, control_bterm, control_locg) %]
59 <input id='search-submit-go' type="submit" value="[% l('Browse') %]"
60 alt="[% l('Browse') %]" class='opac-button' />
61 <img id="browse-submit-spinner" class="hidden"
62 style="width: 16px; height: 16px;"
63 alt="[% l('Search in progress icon') %]"
64 src="[% ctx.media_prefix %]/opac/images/progressbar_green.gif[% ctx.cache_key %]" />
68 [% BLOCK browse_pager %]
70 pivot_lower = CGI.param('didx') - blimit;
71 pivot_higher = CGI.param('didx') + blimit;
75 IF CGI.param('didx') <= 0;
81 IF pivot_higher > ctx.browse_results.size;
82 pivot_higher = ctx.browse_results.size - (blimit + 1);
88 [% IF ctx.browse_results.size >= blimit %]
89 <div class="browse-pager">
90 [% IF lower_limit == 0 %]
91 <a class="opac-button" href="[% mkurl('', {didx => pivot_lower}) %]"
92 onclick="$('browse-pager-spinner-[% id %]').className = '';"
93 >← [%l ('Back') %]</a>
95 [% IF upper_limit == 0 %]
96 <a class="opac-button" href="[% mkurl('', {didx => pivot_higher}) %]"
97 onclick="$('browse-pager-spinner-[% id %]').className = '';"
98 >[%l ('Next') %] →</a>
100 <img id="browse-pager-spinner-[% id %]"
101 src="[% ctx.media_prefix %]/opac/images/progressbar_green.gif[% ctx.cache_key %]"
102 class="hidden" style="width: 16px; height: 16px;"
103 alt="[% l('Search in progress icon') %]" />
108 [% PROCESS browse_pager id=0 %]
110 <div id="browse-results">
111 [% IF ctx.browse_error %]
112 <span class="browse-error">
113 [% l("An error occurred browsing records. " _
114 "Please try again in a moment or report the issue " _
115 "to library staff.") %]
118 [% IF ctx.browse_leading_article_warning %]
119 <div class="browse-leading-article-warning">
120 [% l("Your browse term seems to begin with an article (a, an, the). You might get better results by omitting the article.") %]
121 [% IF ctx.browse_leading_article_alternative %]
122 <p>[% alternative_link = BLOCK %]
123 <a href="[% mkurl('', {bterm => ctx.browse_leading_article_alternative}, ['bpivot']) %]">[% ctx.browse_leading_article_alternative | html %]</a>
124 [%- END; # alternative_link BLOCK
125 l("Did you mean [_1]?", alternative_link);
129 [% END # IF browse leading article warning %]
131 <ul class="browse-result-list">
132 [% FOR result IN ctx.browse_results %]
133 [% IF result.browse_index >= CGI.param('didx') &&
134 result.browse_index <= (CGI.param('didx') + blimit - 1) %]
135 <li class="browse-result">
136 <span class="browse-result-value[% result.match == 1 ? ' browse-result-best-match' : '' %]">
137 [% IF result.results_count > 0 %]
138 <a href="[% mkurl(ctx.opac_root _ '/course/results', {
139 'query' => result.value, 'bool' => 'and'}
140 )%]">[% result.value | html %]</a>
141 <span class="browse-result-sources">([%
142 IF result.accurate == 'f';
144 END; #result.accurate IF
145 result.results_count %])</span>
147 [% result.value | html %]
148 [% END; #result.sources IF %]
152 [% END; #result in browse_results %]
154 [% END; #browse error ELSE %]
157 [% PROCESS browse_pager id=1 %]
160 <div class="common-full-pad"></div>