Bug 22023: Further improve responsive layout handling of staff client menu bar
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / admin / systempreferences.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE Koha %]
4 [% SET footerjs = 1 %]
5 [% INCLUDE 'doc-head-open.inc' %]
6 <title>Koha &rsaquo; Administration &rsaquo; [% IF ( add_form ) %] System preferences &rsaquo; [% IF ( modify ) %]Modify system preference '[% searchfield | html %]'[% ELSE %]Add a system preference[% END %][% END %][% IF ( add_validate ) %] System preferences &rsaquo; Data added[% END %]
7 [% IF ( delete_confirm ) %] System preferences &rsaquo; [% searchfield | html %] &rsaquo; Confirm deletion of parameter '[% searchfield | html %]'[% END %][% IF ( delete_confirmed ) %] System preferences &rsaquo; Parameter deleted[% END %][% IF ( else ) %]System preferences[% END %]</title>
8 [% INCLUDE 'doc-head-close.inc' %]
9 </head>
10
11 <body id="admin_systempreferences" class="admin">
12 [% INCLUDE 'header.inc' %]
13 [% INCLUDE 'prefs-admin-search.inc' %]
14
15 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; [% IF ( add_form ) %] <a href="/cgi-bin/koha/admin/systempreferences.pl">System preferences</a> &rsaquo; [% IF ( modify ) %]Modify system preference '[% searchfield | html %]'[% ELSE %]Add a system preference[% END %][% END %][% IF ( add_validate ) %] <a href="/cgi-bin/koha/admin/systempreferences.pl">System preferences</a> &rsaquo; Data added[% END %]
16 [% IF ( delete_confirm ) %] <a href="/cgi-bin/koha/admin/systempreferences.pl">System Preferences</a> &rsaquo; <a href="/cgi-bin/koha/admin/systempreferences.pl?op=add_form&amp;searchfield=[% searchfield | html %]">[% searchfield | html %]</a> &rsaquo; Confirm deletion of parameter '[% searchfield | html %]'[% END %][% IF ( delete_confirmed ) %] <a href="/cgi-bin/koha/admin/systempreferences.pl">System preferences</a> &rsaquo; Parameter deleted[% END %][% IF ( else ) %]System preferences[% END %]</div>
17
18 <div class="main container-fluid">
19     <div class="row">
20         <div class="col-sm-10 col-sm-push-2">
21             <main>
22
23 [% IF ( add_form ) %]
24         [% IF ( type_upload ) %]
25             <form action="[% script_name | html %]" name="Aform" method="post" enctype="multipart/form-data">
26         [% ELSE %]
27             <form action="[% script_name | html %]" name="Aform" method="post">
28         [% END %]
29         <fieldset class="rows"><legend>
30         [% IF ( modify ) %]Modify
31         [% ELSE %]Add
32         [% END %] a system preference</legend><ol>
33             <li><label for="explanation">Explanation: </label><input type="text" name="explanation" id="explanation" size="60" value="[% explanation | html %]" /><input type="hidden" name="op" value="add_validate" /></li>
34             <li>[% IF ( searchfield ) %]<span class="label">Variable: </span>[% searchfield | html %]<input type="hidden" name="variable" value="[% searchfield | html %]" />
35             [% ELSE %]<label for="variable">Variable: </label><input type="text" name="variable" id="variable" size="60" />[% END %]</li>
36             <li><label for="value">Value: </label>
37                 [% IF ( type_free ) %]
38                     <textarea id="value" name="value" cols="[% fieldlength | html %]">[% value | html %]</textarea>
39                 [% ELSIF ( type_upload ) %]
40                     <input type="file" name="value" />
41                 [% ELSIF ( type_textarea || type_htmlarea ) %]
42                     [% IF ( type_htmlarea ) && ( Koha.Preference('UseWYSIWYGinSystemPreferences') ) %]
43                         <textarea class="mce" name="value" id="value" rows="[% rows | html %]" cols="[% cols | html %]">[% value | html %]</textarea>
44                     [% ELSE %]
45                     <textarea name="value" id="value" rows="[% rows | html %]" cols="[% cols | html %]">[% value | html %]</textarea>
46                     [% END %]
47                 [% ELSIF ( type_choice ) %]
48                     <select name="value" id="value">
49                         [% FOREACH option IN options %]
50                             [% IF ( option.selected ) %]
51                                 <option value="[% option.option | html %]" selected="selected">
52                             [% ELSE %]
53                                 <option value="[% option.option | html %]">
54                             [% END %][% option.option | html %]</option>
55                         [% END %]
56                     </select>
57                 [% END %]
58         [% IF ( type_langselector ) %]
59         [% IF ( languages_loop ) %]
60     <table>
61         [% FOREACH languages_loo IN languages_loop %]
62         <tr><td>
63             [% IF ( languages_loo.plural ) %]
64             [% IF ( languages_loo.native_description ) %][% languages_loo.native_description | html %][% ELSE %][% languages_loo.rfc4646_subtag | html %][% END %]
65             [% FOREACH sublanguages_loo IN languages_loo.sublanguages_loop %]<table><tr><td>
66                 [% IF ( sublanguages_loo.sublanguage_current ) %]
67                     <label for="[% sublanguages_loo.rfc4646_subtag | html %]">[% sublanguages_loo.native_description | html %] [% sublanguages_loo.script_description | html %] [% sublanguages_loo.region_description | html %] [% sublanguages_loo.variant_description | html %]([% sublanguages_loo.rfc4646_subtag | html %])
68                     [% IF ( sublanguages_loo.enabled ) %]
69                         <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
70                     [% ELSE %]
71                         <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" />
72                     [% END %]
73                     </label>
74
75                 [% ELSE %]
76                     <label for="[% sublanguages_loo.rfc4646_subtag | html %]">[% sublanguages_loo.native_description | html %] [% sublanguages_loo.script_description | html %] [% sublanguages_loo.region_description | html %] [% sublanguages_loo.variant_description | html %]([% sublanguages_loo.rfc4646_subtag | html %])
77                     [% IF ( sublanguages_loo.enabled ) %]
78                         <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
79                     [% ELSE %]
80                         <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" />
81                     [% END %]
82                     </label>
83                 [% END %]</td></tr></table>
84             [% END %]
85
86             [% ELSE %]
87                 [% IF ( languages_loo.current ) %]
88             <label for="[% languages_loo.rfc4646_subtag | html %]">[% languages_loo.native_description | html %]([% languages_loo.rfc4646_subtag | html %])
89                 [% IF ( languages_loo.group_enabled ) %]
90                     <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="[% languages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
91                 [% ELSE %]
92                     <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="[% languages_loo.rfc4646_subtag | html %]" type="checkbox" />
93                 [% END %]
94                     </label>
95                 [% ELSE %]
96             <label for="[% languages_loo.rfc4646_subtag | html %]">[% languages_loo.native_description | html %]([% languages_loo.rfc4646_subtag | html %])
97                 [% IF ( languages_loo.group_enabled ) %]
98                     <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="[% languages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
99                 [% ELSE %]
100                     <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="[% languages_loo.rfc4646_subtag | html %]" type="checkbox" />
101                 [% END %]
102                     </label>
103                 [% END %]
104             [% END %]
105         </td></tr>
106         [% END %]
107     </table>
108         [% END %]
109
110         [% END %]
111
112                 [% IF ( type_yesno ) %]
113                     [% IF ( value_yes ) %]
114                         <input type="radio" name="value" id="value" value="1" checked="checked" />[% ELSE %]<input type="radio" name="value" id="value" value="1" />
115                     [% END %]
116                     <label for="value" class="yesno">ON</label>
117                     [% IF ( value_no ) %]
118                         <input type="radio" name="value" id="value-no" value="0" checked="checked" />[% ELSE %]<input type="radio" name="value" id="value-no" value="0" />
119                     [% END %]
120                     <label for="value-no" class="yesno">OFF</label>
121                 [% END %]
122                 </li>
123         </ol></fieldset>
124         <fieldset class="action"><input type="submit" value="Save" /> 
125           [% IF ( return_tab ) %]
126             <a class="cancel" href="/cgi-bin/koha/admin/systempreferences.pl?tab=[% return_tab | html %]">Cancel</a>
127           [% ELSE %]
128             <a class="cancel" href="/cgi-bin/koha/admin/systempreferences.pl">Cancel</a>
129           [% END %]
130         </fieldset>
131         
132         <fieldset class="brief">
133         <legend>Koha internal</legend>
134         <div class="hint">Note: change the variable type to one of the dropdown values as needed</div>
135         <ol>
136         <li><label for="preftype">Variable type:</label>
137         <select name="preftype" id="preftype">
138         [%- IF (preftype && preftype == 'Free') || !preftype -%]
139             <option value="Free" selected>Free</option>
140         [%- ELSE -%]
141             <option value="Free">Free</option>
142         [% END %]
143         [%- IF (preftype && preftype == 'Choice') -%]
144             <option value="Choice" selected>Choice</option>
145         [%- ELSE -%]
146             <option value="Choice">Choice</option>
147         [% END %]
148         [%- IF (preftype && preftype == 'YesNo') -%]
149             <option value="YesNo" selected>YesNo</option>
150         [%- ELSE -%]
151             <option value="YesNo">YesNo</option>
152         [% END %]
153         [%- IF (preftype && preftype == 'Integer') -%]
154             <option value="Integer" selected>Integer</option>
155         [%- ELSE -%]
156             <option value="Integer">Integer</option>
157         [% END %]
158         [%- IF (preftype && preftype == 'Textarea') -%]
159             <option value="Textarea" selected>Textarea</option>
160         [%- ELSE -%]
161             <option value="Textarea">Textarea</option>
162         [% END %]
163         [%- IF (preftype && preftype == 'Htmlarea') -%]
164             <option value="Htmlarea" selected>Htmlarea</option>
165         [%- ELSE -%]
166             <option value="Htmlarea">Htmlarea</option>
167         [% END %]
168         [%- IF (preftype && preftype == 'Float') -%]
169             <option value="Float" selected>Float</option>
170         [%- ELSE -%]
171             <option value="Float">Float</option>
172         [% END %]
173         [%- IF (preftype && preftype == 'Themes') -%]
174             <option value="Themes" selected>Themes</option>
175         [%- ELSE -%]
176             <option value="Themes">Themes</option>
177         [% END %]
178         [%- IF (preftype && preftype == 'Languages') -%]
179             <option value="Languages" selected>Languages</option>
180         [%- ELSE -%]
181             <option value="Languages">Languages</option>
182         [% END %]
183         [%- IF (preftype && preftype == 'Upload') -%]
184             <option value="Upload" selected>Upload</option>
185         [%- ELSE -%]
186             <option value="Upload">Upload</option>
187         [% END %]
188         [%- IF (preftype && preftype == 'ClassSources') -%]
189             <option value="ClassSources" selected>ClassSources</option>
190         [%- ELSE -%]
191             <option value="ClassSources">ClassSources</option>
192         [% END %]
193         </select>
194         <li><label for="prefoptions">Variable options:</label>
195         <div class="hint">(a choice list for choice (separated by |) or cols|rows for texarea)</div>
196         <input type="text" name="prefoptions" id="prefoptions" value="[% prefoptions | html %]" size="60" maxlength="80" /></li>
197         </ol>
198         </fieldset>
199         </form>
200     [% END %]
201     
202     [% IF ( add_validate ) %]
203         <h3>Data recorded</h3>
204         
205         <form action="[% script_name | html %]" method="post">
206         <input type="submit" value="OK" />
207         </form>
208     [% END %]
209     
210     [% IF ( delete_confirm ) %]
211     <table>
212         <caption>Confirm deletion of [% searchfield | html %]?</caption>
213         <tr>
214             <th>Variable name:</th>
215             <td>[% searchfield | html %]</td>
216         </tr>
217         <tr><th>Value: </th><td>
218         [% Tvalue | html %]
219         </td></tr></table>
220         <form class="inline" action="[% script_name | html %]" method="post">
221         <input type="hidden" name="op" value="delete_confirmed" />
222         <input type="hidden" name="searchfield" value="[% searchfield | html %]" />
223         <input type="hidden" name="Tvalue" value="[% Tvalue | html %]" />
224         <input type="submit"  value="Yes, delete" /></form>
225         <form class="inline" action="[% script_name | html %]" method="post"><input type="submit" value="No, do not delete" /></form>
226     [% END %]
227     
228     [% IF ( delete_confirmed ) %]
229         <h3>Data deleted</h3>
230         <form action="[% script_name | html %]" method="post">
231             <input type="submit" value="Back to System Preferences" />
232         </form>
233     [% END %]
234    
235     [% IF ( else ) %]
236
237     <div id="toolbar" class="btn-toolbar">
238         <a class="btn btn-default" id="newstopword" href="[% script_name | url %]?op=add_form"><i class="fa fa-plus"></i> New preference</a>
239     </div>
240
241     [% IF ( tab != 'local_use' ) %]
242         <p>Please click on one of the tabs at the left side of this form.</p>
243         <table>
244     [% ELSE %]
245         <h1>Local use preferences</h1>
246         <table width="80%" id="sysprefst">
247         <thead><tr>
248         <th>Preference</th>
249         <th>Explanation</th>
250         <th>Value</th>
251         <th>Actions</th>
252         </tr></thead>
253     [% END %]
254     <tbody>[% FOREACH loo IN loop %]
255         <tr>
256
257         <td><strong><a href="[% loo.edit | url %]">[% loo.variable | html %]</a></strong></td><td> [% loo.explanation | html %]</td>
258         [% IF ( loo.oneline ) %]
259         <td class="single-line">
260         [% ELSE %]
261         <td>
262         [% END %]
263         [% IF ( loo.type_upload ) %]
264             <form action="/cgi-bin/koha/admin/systempreferences.pl" method="post" enctype="multipart/form-data">
265         [% ELSE %]
266             <form action="/cgi-bin/koha/admin/systempreferences.pl" method="post">
267         [% END %]
268                 [% IF ( loo.type_free ) %]
269                 <input type="text" name="value" size="[% loo.fieldlength | html %]" value="[% loo.value | html %]" />
270                 [% END %]
271                 [% IF ( loo.type_upload ) %]
272                 <input type="file" name="value" value="[% loo.value | html %]" />
273                 [% END %]
274                 [% IF ( loo.type_textarea ) || ( loo.type_htmlarea ) %]
275                     [% IF ( loo.type_htmlarea ) && ( Koha.Preference('UseWYSIWYGinSystemPreferences') ) %]
276                         <textarea class="mce" name="value" rows="[% loo.rows | html %]" cols="[% loo.cols | html %]">[% loo.value | html %]</textarea>
277                     [% ELSE %]
278                         <a class="expand-textarea" style="display: none" href="#">Click to edit</a>
279                         <textarea name="value" rows="[% loo.rows | html %]" cols="[% loo.cols | html %]">[% loo.value | html %]</textarea>
280                     [% END %]
281                 [% END %]
282                 [% IF ( loo.type_choice ) %]
283                 <select name="value">
284                     [% FOREACH option IN loo.options %]
285                         [% IF ( option.selected ) %]
286                             <option value="[% option.option | html %]" selected="selected">
287                         [% ELSE %]
288                             <option value="[% option.option | html %]">
289                         [% END %][% option.option | html %]</option>
290                     [% END %]
291                 </select>
292                 [% END %]
293                 [% IF ( loo.type_langselector ) %]
294                 [% IF ( loo.languages_loop ) %]
295                 <table>
296                 [% FOREACH languages_loo IN loo.languages_loop %]
297                 <tr><td>
298                     [% IF ( languages_loo.plural ) %]
299                     [% IF ( languages_loo.native_description ) %][% languages_loo.native_description | html %][% ELSE %][% languages_loo.rfc4646_subtag | html %][% END %]
300                     [% FOREACH sublanguages_loo IN languages_loo.sublanguages_loop %]<table><tr><td>
301                         [% IF ( sublanguages_loo.sublanguage_current ) %]
302                             <label for="[% sublanguages_loo.rfc4646_subtag | html %]">[% sublanguages_loo.native_description | html %] [% sublanguages_loo.script_description | html %] [% sublanguages_loo.region_description | html %] [% sublanguages_loo.variant_description | html %]([% sublanguages_loo.rfc4646_subtag | html %])
303                             [% IF ( sublanguages_loo.enabled ) %]
304                                 <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
305                             [% ELSE %]
306                                 <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" />
307                             [% END %]
308                             </label>
309
310                         [% ELSE %]
311                             <label for="[% sublanguages_loo.rfc4646_subtag | html %]">[% sublanguages_loo.native_description | html %] [% sublanguages_loo.script_description | html %] [% sublanguages_loo.region_description | html %] [% sublanguages_loo.variant_description | html %]([% sublanguages_loo.rfc4646_subtag | html %])
312                             [% IF ( sublanguages_loo.enabled ) %]
313                                 <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
314                             [% ELSE %]
315                                 <input value="[% sublanguages_loo.rfc4646_subtag | html %]" name="value" id="[% sublanguages_loo.rfc4646_subtag | html %]" type="checkbox" />
316                             [% END %]
317                             </label>
318                         [% END %]</td></tr></table>
319                     [% END %]
320
321                     [% ELSE %]
322                         [% IF ( languages_loo.current ) %]
323                     <label for="[% languages_loo.rfc4646_subtag | html %]">[% languages_loo.native_description | html %]([% languages_loo.rfc4646_subtag | html %])
324                         [% IF ( languages_loo.group_enabled ) %]
325                             <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="opac[% languages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
326                         [% ELSE %]
327                             <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="opac[% languages_loo.rfc4646_subtag | html %]" type="checkbox" />
328                         [% END %]
329                             </label>
330                         [% ELSE %]
331                     <label for="[% languages_loo.rfc4646_subtag | html %]">[% languages_loo.native_description | html %]([% languages_loo.rfc4646_subtag | html %])
332                         [% IF ( languages_loo.group_enabled ) %]
333                             <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="opac[% languages_loo.rfc4646_subtag | html %]" type="checkbox" checked="checked" />
334                         [% ELSE %]
335                             <input value="[% languages_loo.rfc4646_subtag | html %]" name="value" id="opac[% languages_loo.rfc4646_subtag | html %]" type="checkbox" />
336                         [% END %]
337                             </label>
338                         [% END %]
339                     [% END %]
340                 </td></tr>
341                 [% END %]
342                 </table>
343                 [% END %]
344
345                 [% END %]
346
347                 [% IF ( loo.type_yesno ) %]
348                     [% IF ( loo.value_yes ) %]
349                         <input type="radio" name="value" value="1" checked="checked" />[% ELSE %]<input type="radio" name="value" value="1" />
350                     [% END %]
351                     <label for="value" class="yesno">ON</label>
352                     [% IF ( loo.value_no ) %]
353                         <input type="radio" name="value" value="0" checked="checked" />[% ELSE %]<input type="radio" name="value" value="0" />
354                     [% END %]
355                     <label for="value-no" class="yesno">OFF</label>
356                 [% END %]
357                 <input type="hidden" name="op" value="add_validate" />
358                 <input type="hidden" name="variable" value="[% loo.variable | html %]" />
359                 <input type="hidden" name="prefoptions" value="[% loo.prefoptions | html %]" />
360                 <input type="hidden" name="preftype" value="[% loo.type | html %]" />
361                 <input type="hidden" name="explanation" value="[% loo.explanation | html %]" />
362                 <button type="submit" class="btn btn-default btn-xs"><i class="fa fa-save"></i> Save</button>
363             </form>
364         </td>
365
366         <td class="actions"><a class="btn btn-default btn-xs" href="[% loo.edit | url %]"><i class="fa fa-pencil"></i> Edit</a> <a class="btn btn-default btn-xs" href="[% loo.delete | url %]"><i class="fa fa-trash"></i> Delete</a></td>
367     </tr>
368     [% END %]</tbody>
369     </table>
370     
371     [% END %]
372
373             </main>
374         </div> <!-- /.col-sm-10.col-sm-push-2 -->
375
376         <div class="col-sm-2 col-sm-pull-10">
377             <aside>
378                 [% INCLUDE 'admin-menu.inc' %]
379             </aside>
380         </div> <!-- /.col-sm-2.col-sm-pull-10 -->
381      </div> <!-- /.row -->
382
383 [% MACRO jsinclude BLOCK %]
384     [%# Add WYSIWYG editor for htmlarea system preferences %]
385     [% INCLUDE 'wysiwyg-systempreferences.inc' %]
386     [% IF ( else ) %]
387         [% INCLUDE 'datatables.inc' %]
388         <script>
389              $(document).ready(function() {
390                 [% IF ( loop ) %]$("#sysprefst").dataTable($.extend(true, {}, dataTablesDefaults, {
391                     "sDom": '<"top pager"ilf>t',
392                     "aoColumnDefs": [
393                         { "aTargets": [ -1, -2, -3 ], "bSortable": false }
394                     ],
395                     "bPaginate": false
396                 }));[% END %]
397              });
398         </script>
399     [% END %]
400     <script>
401         [% IF ( add_form ) %]
402             $(document).ready(function() {
403                 $('.variabletype').css({ color: "#0000CC", cursor: "pointer" });
404                 $('.variabletype').click(function() {
405                     $('#preftype').attr("value",$(this).attr("id"));
406                 });
407             });
408         [% END %]
409             // FIXME: many of these js functions appear unused
410         function isNotNull(f,noalert) {
411                 if (f.value.length ==0) {
412         return false;
413                 }
414                 return true;
415         }
416
417         function isNum(v,maybenull) {
418             var n = new Number(v.value);
419             if (isNaN(n)) {
420                 return false;
421                 }
422             if (maybenull==0 && v.value=='') {
423                 return false;
424             }
425             return true;
426         }
427
428         function Check(f) {
429             var ok=1;
430             var _alertString="";
431             var alertString2;
432             if (f.variable.value.length==0) {
433                 _alertString += "\n- " + _("variable missing");
434             }
435             if (f.value.value.length==0) {
436                 _alertString += "\n- " + _("value missing");
437             }
438             if (_alertString.length==0) {
439                 document.Aform.submit();
440             } else {
441                 alertString2  = _("Form not submitted because of the following problem(s)");
442                 alertString2 += "\n------------------------------------------------------------------------------------\n";
443                 alertString2 += _alertString;
444                 alert(alertString2);
445             }
446         }
447         $( function() {
448             $( '#sysprefst .expand-textarea' ).show().click( function () {
449                 $( this ).hide().nextAll( 'textarea, input[type=submit]' ).show( 'slow' );
450
451                 return false;
452             } ).nextAll( 'textarea, input[type=submit]' ).hide();
453         });
454     </script>
455 [% END %]
456
457 [% INCLUDE 'intranet-bottom.inc' %]