]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/templates/opac/parts/metarecord_hold_filters.tt2
LP#1053397 Prevent display non-opac-visible icons / hold formats
[working/Evergreen.git] / Open-ILS / src / templates / opac / parts / metarecord_hold_filters.tt2
1 [%#
2 Draws the format multi-select and the language multi-select for
3 limiting the set of desired records for a given metarecord.
4 %]
5
6 <style>
7   /* TODO: MOVE ME */
8   .metarecord_filters {
9       padding: 5px;
10       margin-top: 5px;
11       border-bottom: 1px solid #333;
12       border-top: 1px solid #333;
13   }
14   .metarecord_filter_container {
15     float : left;
16     margin-right: 10px;
17   }
18   .metarecord_filter_container select {
19     padding: 2px;
20     width: 13em; /* consistent w/ adv search selectors */
21   }
22   .metarecord_filter_header {
23     padding-bottom: 5px;
24   }
25 </style>
26
27 [% BLOCK metarecord_hold_filters_selector;
28     # in edit mode, pull the target from the existing hold
29     target_id = hold_data.target.id || hold_data.hold.hold.target;
30
31     selected_formats = {};
32     selected_langs = {};
33     FOR fmt IN hold_data.metarecord_selected_filters.formats;
34         code = fmt.code;
35         selected_formats.$code = fmt;
36     END;
37     FOR lang IN hold_data.metarecord_selected_filters.langs;
38         code = lang.code;
39         selected_langs.$code = lang;
40     END;
41 %]
42
43 <div class="metarecord_filters">
44   <div class="metarecord_filter_container">
45     <div class="metarecord_filter_header">
46       <div>[% l('Select your desired format(s).') %]</div>
47     </div>
48     <select multiple='multiple' 
49       name="metarecord_formats_[% target_id %]">
50       [% FOR ccvm IN
51           hold_data.metarecord_filters.formats.sort('search_label');
52           NEXT IF ccvm.opac_visible == 'f' %]
53         <option value="[% ccvm.code %]"[%- code = ccvm.code; 
54             IF selected_formats.$code %] selected='selected'[% END -%]>
55           [% ccvm.search_label | html %]
56         </option>
57       [% END %]
58     </select>
59   </div>
60   [% IF hold_data.metarecord_filters.langs.size;
61         my_lang = ctx.get_i18n_l(ctx.eg_locale).marc_code;
62   %]
63   <div class="metarecord_filter_container">
64     <div class="metarecord_filter_header">
65       [% l('Select your desired language(s)') %]
66     </div>
67     <select multiple='multiple' 
68       name="metarecord_langs_[% target_id %]">
69       [% FOR lang_ccvm IN hold_data.metarecord_filters.langs.sort('value');
70             NEXT IF lang_ccvm.opac_visible == 'f';
71             selected = 0; 
72             code = lang_ccvm.code;
73             IF selected_langs.size;
74                 # user has already selected their preferred language(s)
75                 SET selected = 1 IF selected_langs.$code;
76             ELSE;
77                 # no prefered language selected, default to current locale
78                 SET selected = 1 IF code == my_lang;
79             END;
80         %]
81         <option value="[% lang_ccvm.code %]"[%- 
82             IF selected %] selected='selected'[%- END %]>
83           [% lang_ccvm.value | html %]
84         </option>
85       [% END %]
86     </select>
87   </div>
88   [% END %]
89   <div class="clear-both">&nbsp;</div>
90 </div>
91 [% END # metarecord_hold_filters_selector %]