]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/templates/opac/parts/result/table.tt2
LP#1902965: HTML filter on OPAC search results and record display, with accordion
[Evergreen.git] / Open-ILS / src / templates / opac / parts / result / table.tt2
1 [%  PROCESS "opac/parts/misc_util.tt2";
2
3     USE ResolverResolver;
4
5     ctx.result_start = 1 + ctx.page_size * page;
6     ctx.result_stop = ctx.page_size * (page + 1);
7     IF ctx.result_stop > ctx.hit_count; ctx.result_stop = ctx.hit_count; END;
8
9     result_count = ctx.result_start;
10
11 %]
12
13 [% PROCESS "opac/parts/result/paginate.tt2" %] 
14 [% ctx.results_count_header = PROCESS results_count_header;
15     ctx.results_count_header %]
16 [% IF ctx.bookbag %]
17 <div id="result-bookbag-heading">
18     <div class="result-bookbag-name">[% ctx.bookbag.name | html %]</div>
19     <div class="result-bookbag-description">[% ctx.bookbag.description | html %]</div>
20 </div>
21 [% END %]
22 <div id="result_table_div">
23     <div class="facet_sidebar_hidden" id="facet_sidebar">
24     [%- IF ctx.is_staff %]
25     <h3 class="sr-only">[% l('Saved Searches') %]</h3>
26     [% INCLUDE "opac/parts/staff_saved_searches.tt2" %]
27     [%-  END %]
28     <h3 class="sr-only">[% l('Search Results facets') %]</h3>
29     [% INCLUDE 'opac/parts/result/facets.tt2' %]
30     <h3 class="sr-only">[% l('Search Results List') %]</h3>
31     </div>
32             <div id="result_block" class="result_block_visible">
33                 [% IF !ctx.is_meta %]
34                 <div id="record_selector_block" class="hidden">
35                     <input type="checkbox" id="select_all_records"></input>
36                     <label for="select_all_records">[% l('Select [_1] - [_2]', ctx.result_start, ctx.result_stop) %]</label>
37                     <span id="selected_records_summary">
38                         <a href="[% mkurl(ctx.opac_root _ '/mylist') %]" class="no-dec" rel="nofollow" vocab="">
39                           <span id="selected_records_count">[% ctx.mylist.size %]</span>
40                           [% IF ctx.mylist.size == 1; %]
41                               [% l('selected title') %]
42                           [% ELSE; %]
43                               [% l('selected titles') %]
44                           [% END; %]
45                         </a>
46                         <span id="hit_selected_record_limit" class="hidden">Reached limit!</span>
47                     <span>
48                     <a id="clear_basket" href="#">[% l('Clear basket') %]</a>
49                 </div>
50                 [% END %]
51                 <table id="result_table_table" title="[% l('Search Results') %]"
52                   class="table_no_border_space table_no_cell_pad">
53                     <thead class="sr-only">
54                       <tr>
55                         <th>[% l('Search result number') %]</th>
56                         <th>[% l('Book jacket cover art') %]</th>
57                         <th>[% l('Item details and Actions') %]</th>
58                       </tr>
59                     </thead>
60                     <tbody id="result_table">
61                     [%  FOR rec IN ctx.records;
62                             attrs = {};
63                             attrs.marc_xml = rec.marc_xml;
64                             attrs.mr_constituent_ids = [];
65                             FOREACH mr_constituent_id IN rec.mr_constituent_ids;
66                                 attrs.mr_constituent_ids.push(mr_constituent_id);
67                             END;
68                             PROCESS get_marc_attrs args=attrs;
69                             IF show_detail_view;
70                                 attrs.title = attrs.title_extended;
71                             END;
72                             # note: rec.id refers to the record identifier, regardless
73                             # of the type of record. i.e. rec.id = mmr_id ? mmr_id : bre_id
74                             IF rec.mmr_id;
75                                 IF rec.mr_constituent_count > 1;
76                                     # metarecords link to record list page
77                                     record_url_path = ctx.opac_root _ '/results'; 
78                                     add_parms = {metarecord => rec.mmr_id};
79                                     del_parms = ['page'];
80                                 ELSE;
81                                     # for MR, bre_id refers to the master and in
82                                     # this case, only, record
83                                     record_url_path = ctx.opac_root _ '/record/' _ attrs.mr_constituent_ids.0;
84                                     add_parms = { badges => rec.badges.join(',') };
85                                     del_parms = ['quux'];
86                                 END;
87                                 hold_type = 'M';
88                             ELSE;
89                                 record_url_path = ctx.opac_root _ '/record/' _ rec.bre_id; 
90                                 add_parms = { badges => rec.badges.join(',') };
91                                 del_parms = ['quux'];
92                                 hold_type = 'T';
93                             END;
94
95                             IF is_advanced; 
96                                     # Do not pass "advanced params" to result detail code.
97                                     # Instead, pass the scrubed query in one-line form
98                                     del_parms = del_parms.merge(['query', 'bool', 
99                                                      'qtype', 'contains', '_adv']);
100                                     add_parms.import(
101                                          {query => ctx.naive_query_scrub(ctx.user_query)} );
102                             END;
103                             is_selected = ctx.mylist.grep('^' _ rec.id _ '$').size;
104                         %]
105                         <tr class="result_table_row [% IF is_selected %]result_table_row_selected[% END %]">
106                                             <td class="results_row_count" name="results_row_count">
107                                                 [% IF !ctx.is_meta; %]
108                                                 <input type="checkbox" id="select-[% rec.bre_id %]" name="selected_record"
109                                                     [% IF is_selected %] checked="checked" [% END %]
110                                                     title="[% l('Add to Basket') %]"
111                                                     aria-label="[% l('Add to Basket') %]"
112                                                     class="result_record_selector hidden" value="[% rec.bre_id %]"></input>
113                                                 [% END %]
114                                                 [% result_count; result_count = result_count + 1 %].
115                                             </td>
116                                             <td class='result_table_pic_header'>
117                                                 <a href="[% mkurl(record_url_path, add_parms, del_parms); %]">
118                                                  <img alt="[% l('Book cover') %]"
119                                                         name='item_jacket' class='result_table_pic' width="55"
120                                                         src='[% ctx.media_prefix %]/opac/extras/ac/jacket/small/r/[% rec.bre_id | uri %]' /></a><br />
121                                             </td>
122                                             <td class='result_table_title_cell' name='result_table_title_cell'>
123                                                <div class="result_metadata">
124                                                     [% IF rec.mmr_id %]
125                                                     <abbr class="unapi-id" 
126                                                       title='tag:[% ctx.hostname %],[% date.format(date.now, '%Y') %]:metabib-metarecord/[% rec.mmr_id %]'>
127                                                     </abbr>
128                                                     [% ELSE %]
129                                                     <abbr class="unapi-id" 
130                                                       title='tag:[% ctx.hostname %],[% date.format(date.now, '%Y') %]:biblio-record_entry/[% rec.bre_id %]'>
131                                                     </abbr>
132                                                     [% END %]
133                                                     <a class='record_title search_link' name='record_[% rec.id %]'
134                                                         href="[% mkurl(record_url_path, add_parms, del_parms); %]"
135                                                         [% html_text_attr('title', l('Display record details for "[_1]"', attrs.title)) | html%]>
136                                                         [% IF attrs.hl.title; attrs.hl.title; ELSE; attrs.title | html; END %]
137                                                      </a>
138                                                      [% IF rec.mr_constituent_count.defined && rec.mr_constituent_count > 1 %]
139                                                      <span title="[% l('This group contains [_1] records', rec.mr_constituent_count) %]">
140                                                       ([% rec.mr_constituent_count %])
141                                                      </span>
142                                                      [% END %]
143
144 [%-
145 FOR entry IN attrs.graphic_titles;
146     FOR alt IN entry.graphic;
147         diratt = "";
148         IF alt.dir;
149             diratt = ' dir="' _ alt.dir _ '"';
150         END;
151 -%]
152 <div class="graphic880"[% diratt %]>
153     [% accordion(alt.value) %]
154 </div>
155 [%-
156     END;
157 END;
158 -%]
159  
160                                                     <div>
161                                                         <a title="[% l("Perform an Author Search") %]"
162                                                                 class="record_author"
163                                                                 href="[%- 
164                                                                     authorquery = attrs.author | replace('[#"^$\+\-,\.:;&|\[\]()]', ' ');
165                                                                     mkurl(ctx.opac_root _ '/results', {qtype => 'author', query => authorquery}, general_search_parms.merge(expert_search_parms, browse_search_parms, facet_search_parms))
166                                                                     -%]" rel="nofollow" vocab="">[% IF attrs.hl.author; attrs.hl.author; ELSE; attrs.author | html; END %]</a>
167 [%-
168 FOR entry IN attrs.graphic_authors;
169     FOR alt IN entry.graphic;
170         diratt = "";
171         IF alt.dir;
172             diratt = ' dir="' _ alt.dir _ '"';
173         END;
174 -%]
175 <div class="graphic880"[% diratt %]>
176     [% accordion(alt.value) %]
177 </div>
178 [%-
179     END;
180 END;
181 -%]
182
183                                                     </div>
184                                                     <div class='result_table_title_cell'>
185                                                     [%- IF attrs.format_label; %]
186                                                         [% FOR format IN attrs.all_formats %]
187                                                             <img title="[% format.label | html %]" 
188                                                                 alt="[% format.label | html %]" 
189                                                                 src="[% format.icon %]" /> 
190                                                             [% format.label | html %]
191                                                         [% END %]
192                                                     [%- END %]
193                                                     [%- UNLESS show_detail_view;
194                                                             IF attrs.pubdate;
195                                                                 pubdate_clean = attrs.pubdate | html;
196                                                                 l(" ([_1])", pubdate_clean);
197                                                             ELSIF attrs.copyright;
198                                                                 copyright_clean = attrs.copyright | html;
199                                                                 l(" ([_1])", copyright_clean);                                                                
200                                                             END;
201                                                         END
202                                                     -%]
203                                                     </div>
204                                                     [% IF rec.popularity > 0.0 AND ctx.hide_badge_scores != 'true' %]
205                                                       <div>
206                                                         <span><strong>[% l('Popularity:') %]</strong> [% rec.popularity %] / 5.0</span>
207                                                       </div>
208                                                     [% END %]
209                                                     <table 
210                                                        role="presentation"
211                                                        title="[% l('Record Holdings Summary') %]"
212                                                        class="table_no_border_space table_no_cell_pad table_no_border results_info_table">
213                                                         [% UNLESS rec.mmr_id OR show_detail_view %]
214                                                            [% IF args.holdings.size > 0 %]
215                                                         <tr name='bib_cn_list' class='result_table_title_cell'>
216                                                             <td valign='top'>
217                                                                 <strong>[% l('Call number:') %]</strong>
218                                                             </td>
219                                                             <td>[% args.holdings.0.label | html %]</td>
220                                                         </tr>
221                                                            [% END %]
222                                                         [% END %]
223
224                                                         [%- IF show_detail_view -%]
225                                                         <!-- These fields are visible when viewing the results page in 'detailed' mode -->
226                                                         [% UNLESS rec.mmr_id %]
227                                                         <!-- Do not show publication-specific information on a metarecord search results page -->
228                                                         [% IF attrs.publisher %]
229                                                             <tr name="results_pub_tr">
230                                                                 <td valign="top">
231                                                                     <strong>[% l('Publisher:') %]</strong>
232                                                                 </td>
233                                                                 <td>[% pub_string = attrs.pubplace _ attrs.publisher _ attrs.pubdate;
234                                                                         accordion(pub_string, 'publisher'); %]</td>
235 [%-
236 FOR entry IN attrs.graphic_pubinfos;
237     FOR alt IN entry.graphic;
238         diratt = "";
239         IF alt.dir;
240             diratt = ' dir="' _ alt.dir _ '"';
241         END;
242 -%]
243 <div class="graphic880"[% diratt %]>
244     [% accordion(alt.value) %]
245 </div>
246 [%-
247     END;
248 END;
249 -%]
250 </td>
251                                                             </tr>
252                                                         [% ELSIF attrs.producer %]
253                                                             <tr name="results_pub_tr">
254                                                                 <td valign="top">
255                                                                     <strong>[% l('Producer:') %]</strong>
256                                                                 </td>
257                                                                 <td>[% prod_string = attrs.prodplace _ attrs.producer _ attrs.proddate;
258                                                                  accordion(prod_string, 'producer'); %]</td>
259                                                             </tr>
260                                                         [% ELSIF attrs.distributor %]
261                                                             <tr name="results_pub_tr">
262                                                                 <td valign="top">
263                                                                     <strong>[% l('Distributor:') %]</strong>
264                                                                 </td>
265                                                                 <td>[% dist_string = attrs.distplace _ attrs.distributor _ attrs.distdate; 
266                                                                   accordion(dist_string, 'distributor'); %]</td>
267                                                             </tr>
268                                                         [% ELSIF attrs.manufacturer %]
269                                                             <tr name="results_pub_tr">
270                                                                 <td valign="top">
271                                                                     <strong>[% l('Manufacturer:') %]</strong>
272                                                                 </td>
273                                                                 <td>[% man_string = attrs.manplace _ attrs.manufacturer _ attrs.mandate;
274                                                                   accordion(man_string, 'manufacturer'); %]</td>
275                                                             </tr>
276                                                         [% END %]
277                                                         [% IF attrs.isbns.size > 0 %]
278                                                             <tr name="results_isbn_tr">
279                                                                 <td valign="top">
280                                                                     <strong>[% l('ISBN:') %]</strong>
281                                                                 </td>
282                                                                 <td>[% attrs.isbns.0 | html %]</td>
283                                                             </tr>
284                                                         [% END %]
285                                                         [%- IF attrs.issns.size > 0 %]
286                                                             <tr name="results_issn_tr">
287                                                                 <td valign="top">
288                                                                     <strong>[% l('ISSN:') %]</strong>
289                                                                 </td>
290                                                                 <td>[% attrs.issns.0 | html %]</td>
291                                                             </tr>
292                                                         [%- END %]
293                                                         [%- IF openurl.enabled == 'true';
294                                                             FOREACH issn IN args.issns;
295                                                                 NEXT IF issn == '';
296                                                                 res_urls = ResolverResolver.resolve_issn(issn, openurl.baseurl);
297                                                                 FOREACH res IN res_urls;
298                                                         %]
299                                                         <tr name="results_issn_tr">
300                                                             <td valign="top">
301                                                                 <strong><a href="[% res.target_url %]">
302                                                                 [% res.public_name | html %]</a></strong>
303                                                             </td>
304                                                             <td>[% res.target_coverage | html %]
305                                                             [%- IF res.target_embargo != '';
306                                                                     ' - ';
307                                                                     res.target_embargo | html;
308                                                                 END;
309                                                             -%]
310                                                             </td>
311                                                         </tr>
312                                                                 [% END %]
313                                                             [% END %]
314                                                         [% END %]
315
316                                                         [% IF attrs.edition %]
317                                                             <tr name="results_edition_tr">
318                                                                 <td valign="top">
319                                                                     <strong>[% l('Edition:') %]</strong>
320                                                                 </td>
321                                                                 <td>[% accordion(attrs.edition, 'edition'); %]
322 [%-
323 FOR entry IN attrs.graphic_editions;
324     FOR alt IN entry.graphic;
325         diratt = "";
326         IF alt.dir;
327             diratt = ' dir="' _ alt.dir _ '"';
328         END;
329 -%]
330 <div class="graphic880"[% diratt %]>
331     [% accordion(alt.value) %]
332 </div>
333 [%-
334     END;
335 END;
336 -%]
337 </td>
338                                                             </tr>
339                                                         [% END %]
340                                                         [% IF attrs.phys_desc %]
341                                                             <tr name="results_phys_desc_tr">
342                                                                 <td nowrap="nowrap" valign="top">
343                                                                     <strong>[% l('Phys. Desc.:') %]</strong>
344                                                                 </td>
345                                                                 <td>
346                                                                     [% accordion(args.phys_desc, 'phys_desc'); %]
347                                                                 </td>
348                                                             </tr>
349                                                         [% END %]
350                                                         [% FOR uri IN args.uris %]
351                                                             <tr name='bib_uri_list' class='result_table_title_cell'>
352                                                                 <td valign='top'>
353                                                                     <strong>[% l('Electronic resource') %]</strong>
354                                                                 </td>
355                                                                 <td><a href="[% uri.href | html %]" class="uri_link" target="_blank" rel="noopener">[% uri.link | html %]</a>[% ' - ' _ uri.note | html IF uri.note %]</td>
356                                                             </tr>
357                                                             [% END %]
358                                                          [% END %]
359                                                             [%- IF args.holdings.size > 0;
360                                                                 FOREACH copy IN args.holdings;
361                                                                     IF copy.part_label != '';
362                                                                         has_parts = 'true';
363                                                                         LAST;
364                                                                     END;
365                                                                 END;
366                                                             %]
367                                                             <tr name='bib_cn_list' class='result_table_title_cell'>
368                                                                 <td colspan='2'>
369                                                                     <table title="[% l('Record Holdings Details') %]"
370                                                                            class='result_holdings_table'>
371                                                                         <thead><tr>
372                                                                             <th>[% l('Library') %]</th>
373                                                                             <th>[% l('Shelving location') %]</th>
374                                                                             <th>[% l('Call number') %]</th>
375                                                                             [%- IF has_parts == 'true'; %]
376                                                                             <th>[% l('Part') %]</th>
377                                                                             [%- END %]
378                                                                             <th>[% l('Status') %]</th>
379                                                                         </tr></thead>
380                                                                         <tbody>
381                                                                 [% FOR copy IN args.holdings %]
382                                                                         <tr>
383                                                                             <td>
384 [%- copy_info = copy;
385     INCLUDE "opac/parts/library_name_link.tt2"; %]
386                                                                             </td>
387                                                                             <td>[% copy.location | html %]</td>
388                                                                             <td>[% copy.label | html %]</td>
389                                                                             [%- IF has_parts == 'true'; %]
390                                                                             <td>[% copy.part_label %]</td>
391                                                                             [%- END %]
392                                                                             <td>[% copy.status | html %]</td>
393                                                                         </tr>
394                                                                 [% END %]
395                                                                         </tbody>
396                                                                     </table>
397                                                                 </td>
398                                                             </tr>
399                                                             [%- has_parts = 'false';
400                                                                 END;
401                                                              %]
402                                                         [% END %] <!-- END detail_record_view -->
403                                                     </table>
404                                                     [% 
405                                                         IF ebook_api.enabled == 'true';
406                                                             INCLUDE "opac/parts/ebook_api/avail.tt2";
407                                                         END;
408                                                     %]
409                                                     [% UNLESS rec.mmr_id;
410                                                             PROCESS "opac/parts/result/copy_counts.tt2";
411                                                         END; %]
412                                                     [%- IF ctx.get_org_setting(ctx.physical_loc || ctx.search_ou, 'circ.course_materials_opt_in') == 1 %]
413                                                         [%- courseStrings = [] %]
414                                                         [% FOREACH course IN rec.courses %]
415                                                             [% courseString = course.name _ ' (' _ course.course_number _ ')' %]
416                                                             [% courseStrings.push(courseString); %]
417                                                         [% END %]
418                                                         [% IF courseStrings.size > 0 %]
419                                                             <span><strong>[% l('Associated Courses: ') %]</strong></span>
420                                                             <span>[% courseStrings.join(', ') %]</span>
421                                                         [% END %]
422                                                     [% END %]
423                                                     [% IF rec.user_circulated %]
424                                                     <div class="result_item_circulated">
425                                                         <img src="[% ctx.media_prefix %]/images/green_check.png[% ctx.cache_key %]" alt="[% l('Checked Out Before') %]"/>
426                                                         <span>[% l('I have checked this item out before') %]</span>
427                                                     </div>
428                                                     [% END %]
429                                                     [% IF ctx.bookbag;
430                                                         rec_id = rec.id;
431                                                         FOR note IN ctx.bookbag_items_by_bre_id.$rec_id.notes %]
432                                                     <div class="result-bookbag-item-note">
433                                                         [% note.note | html %]
434                                                     </div>
435                                                         [% END %]
436                                                     [% END %]
437                                                 </div>
438                                                 <div class="result_table_utils_cont">
439                                                     <div class="result_table_utils">
440 [%- search_ou = ctx.search_ou;
441     num_holdable_copies = attrs.marc_xml.findnodes('//*[local-name()="holdings" and @has_holdable="true"]').size || 0;
442     IF ctx.place_unfillable ||
443         ( num_holdable_copies > 0
444             && (ctx.holds_block.enabled != 'true' || attrs.org_copy_counts.$search_ou.available == 0)
445         )
446 %]
447
448                                                         [% del_parms = ['tag','subfield','term','_special',
449                                                                     'sort','page'];
450                                                         add_parms = {hold_target => rec.id, 
451                                                                      hold_type => hold_type, 
452                                                                      hold_source_page => mkurl()};
453
454                                                         IF is_advanced;
455                                                             # Do not pass "advanced params" to hold code
456                                                             # Instead, pass the scrubed query in one-line form
457                                                             del_parms = del_parms.merge(['query', 'bool', 
458                                                                              'qtype', 'contains', '_adv']);
459                                                             add_parms.import(
460                                                                 {query => ctx.naive_query_scrub(ctx.user_query)});
461                                                         END; %]
462
463                                                         <div class="results_aux_utils place_hold"><a
464                                                                 href="[% mkurl(ctx.opac_root _ '/place_hold',
465                                                                     add_parms, del_parms) %]"
466                                                                 [% html_text_attr('title', l('Place Hold on [_1]', attrs.title)) | html %]
467                                                                     class="no-dec" rel="nofollow" vocab=""><img
468                                                                 src="[% ctx.media_prefix %]/images/green_check.png[% ctx.cache_key %]"
469                                                                 alt=""/><span class="result_place_hold">[% l('Place Hold') %]</span></a>
470                                                         </div>
471 [%- END -%]
472
473                                                         [%- IF ebook_api.enabled == 'true' && args.ebook %]
474                                                         <div id="[%- rec.id -%]_ebook_checkout" class="results_aux_utils result_util ebook_action hidden">
475                                                             <a href="[% mkurl(ctx.opac_root _ '/myopac/ebook_checkout',
476                                                                 {title => args.ebook.ebook_id, vendor => args.ebook.vendor, action => 'checkout'},
477                                                                 ['query','tag','subfield','term','_special','sort','page']) %]"
478                                                                 [% html_text_attr('title', l('Check Out [_1]', attrs.title)) | html %]
479                                                                     class="no-dec" rel="nofollow" vocab=""><img
480                                                                 src="[% ctx.media_prefix %]/images/green_check.png[% ctx.cache_key %]"
481                                                                 alt=""/><span class="result_place_hold">[% l('Check Out E-Item') %]</span></a>
482                                                         </div>
483                                                         <div id="[%- rec.id -%]_ebook_place_hold" class="results_aux_utils result_util ebook_action hidden">
484                                                             <a href="[% mkurl(ctx.opac_root _ '/myopac/ebook_place_hold',
485                                                                 {title => args.ebook.ebook_id, vendor => args.ebook.vendor, action => 'place_hold'},
486                                                                 ['query','tag','subfield','term','_special','sort','page']) %]"
487                                                                 [% html_text_attr('title', l('Place Hold on [_1]', attrs.title)) | html %]
488                                                                     class="no-dec" rel="nofollow" vocab=""><img
489                                                                 src="[% ctx.media_prefix %]/images/green_check.png[% ctx.cache_key %]"
490                                                                 alt=""/><span class="result_place_hold">[% l('Place Hold on E-Item') %]</span></a>
491                                                         </div>
492                                                         [%- END -%]
493
494                                                     [% IF !ctx.is_meta %]
495                                                         <div class="results_aux_utils result_util">
496                                                         [% IF !ctx.is_staff %]
497                                                             [%
498                                                                 addhref = mkurl(ctx.opac_root _ '/mylist/add',
499                                                                         {record => rec.id, anchor => 'record_' _ rec.id}, 1);
500                                                                 delhref = mkurl(ctx.opac_root _ '/mylist/delete',
501                                                                         {record => rec.id, anchor => 'record_' _ rec.id}, 1);
502                                                             %]
503                                                             <a href="[% addhref %]" id="mylist_add_[% rec.id %]"
504                                                                 data-recid="[% rec.id %]" data-action="add"
505                                                                 class="mylist_action [% IF ctx.mylist.grep('^' _ rec.id _ '$').size %]hidden[% END %]"
506                                                                 title="[% l("Add [_1] to basket", attrs.title) | html %]" rel="nofollow" vocab="">
507                                                                 <img src="[% ctx.media_prefix %]/images/add-to-cart.png[% ctx.cache_key %]" alt="" />
508                                                                 [% l("Add to basket") %]
509                                                             </a>
510                                                             <a href="[% delhref %]" id="mylist_delete_[% rec.id %]"
511                                                                 data-recid="[% rec.id %]" data-action="delete"
512                                                                 class="mylist_action [% IF !ctx.mylist.grep('^' _ rec.id _ '$').size %]hidden[% END %]"
513                                                                 title="[% l("Remove [_1] from basket", attrs.title) | html %]" rel="nofollow" vocab="">
514                                                                 <img src="[% ctx.media_prefix %]/images/add-to-cart.png[% ctx.cache_key %]" alt="" />
515                                                                 [% l("Remove from basket") %]
516                                                             </a>
517                                                             [%  IF ctx.user;
518                                                                 INCLUDE "opac/parts/bookbag_actions.tt2";
519                                                                 END;
520                                                             %]
521                                                         [% END %]
522                                                         </div>
523                                                     [% END %]
524                                                         [% IF ENV.OILS_CONTENT_CAFE_USER %]
525                                                         [% ident = attrs.isbn_clean || attrs.upc %]
526                                                         <div class="results_aux_utils result_util">
527                                                             <a target='_blank' 
528                                                                [% html_text_attr('title', l('Reviews and More for [_1]', attrs.title)) | html %]
529                                                                 href="[% ctx.ext_proto %]://contentcafe2.btol.com/ContentCafeClient/ContentCafe.aspx?UserID=[%- 
530                                                                     ENV.OILS_CONTENT_CAFE_USER %]&amp;Password=[%-
531                                                                     ENV.OILS_CONTENT_CAFE_PASS %]&amp;ItemKey=[% ident | uri %]&amp;Options=Y" rel="noopener nofollow" vocab="">
532                                                                 <img src='[% ctx.media_prefix %]/images/starz.png[% ctx.cache_key %]' alt="[% l('Ratings Icon') %]"/>
533                                                                 <span class="results_reviews">[% l('Reviews &amp; More') %]</span>
534                                                             </a>
535                                                         </div>
536                                                         [% END %]
537                                                     </div>
538                                                 </div>
539
540                                             </td>
541
542                                         </tr>
543                                         [%- IF ENV.OILS_CHILIFRESH_ACCOUNT %]
544                                         <tr>
545                                             <td></td>
546                                             <td align='center'> <!-- Chilifresh reviews link --> 
547                                                 <span class="chili_review" id="isbn_[% attrs.isbn_clean | html %]"> </span>
548                                             </td>
549                                         </tr>
550                                         <tr>
551                                             <td></td>
552                                             <td colspan='5'> <!-- Chilifresh reviews panel -->
553                                                 <div id="chili_review_[% attrs.isbn_clean | html %]" style="display: none;" align="center"></div>
554                                             </td>
555                                         </tr>
556                                         [%- END %]
557                     [% END %]
558                     </tbody>
559                 </table>
560             </div>
561 </div>
562 <div class="result_footer_nav1">
563     [% ctx.results_count_header %]
564 </div>
565 <script>
566 resultBlock = document.getElementById('result_block');
567 resultButton = document.getElementById('return_to_hits');
568 facetSidebar = document.getElementById('facet_sidebar');
569 facetButton =  document.getElementById('refine_hits');
570 function getFacety() {
571     resultBlock.setAttribute('class', 'result_block_hidden');
572     resultButton.setAttribute('class', 'results_header_btns result_block_visible');
573     facetSidebar.setAttribute('class', 'facet_sidebar_visible');
574     facetButton.setAttribute('class', 'result_block_hidden');
575     window.location.hash = 'return_to_hits';
576 }
577 function getResulty() {
578     resultBlock.setAttribute('class', 'result_block_visible');
579     resultButton.setAttribute('class', 'result_block_hidden');
580     facetSidebar.setAttribute('class', 'facet_sidebar_hidden');
581     facetButton.setAttribute('class', 'results_header_btns result_block_visible');
582     window.location.hash = 'refine_hits';
583 }
584 </script>