MDL-72377 grade: fix category form hidden/until fields.
[moodle.git] / admin / templates / setting_configmultiselect_optgroup.mustache
bloba1cbc9d7ee3a6087046bc0ba42d8370118aef759
1 {{!
2     This file is part of Moodle - http://moodle.org/
4     Moodle is free software: you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation, either version 3 of the License, or
7     (at your option) any later version.
9     Moodle is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
14     You should have received a copy of the GNU General Public License
15     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
17 {{!
18     @template core_admin/setting_configmultiselect_optgroup
20     Admin multiselect setting template with optgroup support.
22     Context variables required for this template:
23     * name - form element name
24     * id - element id
25     * size - element size
26     * options - list of options not grouped
27     * optgroups - list of options grouped containing the group label and for each option: name, value, selected
28     * readonly - bool
30     Example context (json):
31     {
32         "name": "test",
33         "id": "test0",
34         "readonly": false,
35         "size": "3",
36         "options": [
37             { "name": "Option 1", "value": "V", "selected": false },
38             { "name": "Option 2", "value": "V", "selected": true }
39         ],
40         "optgroups": [
41             {
42                 "label": "Group 1",
43                 "options": [
44                     { "name": "Option 3", "value": "V", "selected": false },
45                     { "name": "Option 4", "value": "V", "selected": true }
46                 ]
47             },
48             {
49                 "label": "Group 2",
50                 "options": [
51                     { "name": "Option 5", "value": "V", "selected": false },
52                     { "name": "Option 6", "value": "V", "selected": true }
53                 ]
54             }
55         ]
56     }
58 {{!
59     Setting configmultiselect with optgroup support.
61 <div class="form-select">
62     <input type="hidden" name="{{name}}[xxxxx]" value="1">
63     <select {{#readonly}}disabled{{/readonly}} id="{{id}}" name="{{name}}[]" size="{{size}}" class="form-control" multiple>
64     {{#options}}
65         <option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
66     {{/options}}
67     {{#optgroups}}
68             <optgroup label="{{label}}">
69                 {{#options}}
70                     <option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
71                 {{/options}}
72             </optgroup>
73         {{/optgroups}}
74     </select>
75 </div>