]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/templates-bootstrap/opac/parts/metarecord_hold_filters.tt2
817500213005e0201d343da621dc3fd3295fa0ab
[Evergreen.git] / Open-ILS / src / templates-bootstrap / 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 [% BLOCK metarecord_hold_filters_selector;
7     # in edit mode, pull the target from the existing hold
8     target_id = hold_data.hold.hold.target || hold_data.target.id;
9
10     selected_formats = {};
11     selected_langs = {};
12     FOR fmt IN hold_data.metarecord_selected_filters.formats;
13         code = fmt.code;
14         selected_formats.$code = fmt;
15     END;
16     FOR lang IN hold_data.metarecord_selected_filters.langs;
17         code = lang.code;
18         selected_langs.$code = lang;
19     END;
20 %]
21 <hr>
22 <h4>[% l('Select your desired format(s).') %]</h4>
23 <div class="row">
24   <div class="col-6">
25     <div class="metarecord_filter_header">
26       
27     </div>
28     <select multiple='multiple' class="form-control"
29       name="metarecord_formats_[% target_id %]">
30       [% FOR ccvm IN
31           hold_data.metarecord_filters.formats.sort('search_label');
32           NEXT IF ccvm.opac_visible == 'f' %]
33         <option value="[% ccvm.code %]"[%- code = ccvm.code; 
34             IF selected_formats.$code %] selected='selected'[% END -%]>
35           [% ccvm.search_label | html %]
36         </option>
37       [% END %]
38     </select>
39           <div>[% l('If none are selected, any available formats may be used.') %]</div>
40
41   </div>
42   [% IF hold_data.metarecord_filters.langs.size;
43         my_lang = ctx.get_i18n_l(ctx.eg_locale).marc_code;
44   %]
45   <div class="col-6">
46    
47     <select multiple='multiple' class="form-control"
48       name="metarecord_langs_[% target_id %]">
49       [% FOR lang_ccvm IN hold_data.metarecord_filters.langs.sort('value');
50             NEXT IF lang_ccvm.opac_visible == 'f';
51             selected = 0; 
52             code = lang_ccvm.code;
53             IF selected_langs.size;
54                 # user has already selected their preferred language(s)
55                 SET selected = 1 IF selected_langs.$code;
56
57             ELSIF !hold_data.hold.hold.target; # new hold
58                 # no prefered language selected; use current locale
59                 SET selected = 1 IF code == my_lang;
60             END;
61         %]
62         <option value="[% lang_ccvm.code %]"[%- 
63             IF selected %] selected='selected'[%- END %]>
64           [% lang_ccvm.value | html %]
65         </option>
66       [% END %]
67     </select>
68      <div>
69       <div>[% l('Select your desired language(s).') %]</div>
70       <div>[% l('If none are selected, any available languages may be used.') %]</div>
71     </div>
72   </div>
73   [% END %]
74   
75 </div>
76 [% END # metarecord_hold_filters_selector %]