MDL-71264 behat: New feature covering all day/month/year date changes
[moodle.git] / admin / templates / setting_configselect_optgroup.mustache
blob862ac6126e43d1cb5559bee204db7aad9e33267b
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_configselect_optgroup
20     Admin select with optgroup setting template.
22     Context variables required for this template:
23     * name - form element name
24     * id - element id
25     * readonly - bool
26     * options - list of options (not grouped)
27     * optgroups - list of options grouped containing the group label and for each option: name, value, selected
29     Example context (json):
30     {
31         "name": "test",
32         "id": "test0",
33         "readonly": false,
34         "options": [
35             { "name": "Option 1", "value": "V", "selected": false },
36             { "name": "Option 2", "value": "V", "selected": false }
37         ],
38         "optgroups": [
39             {
40                 "label": "Group 1",
41                 "options": [
42                     { "name": "Option 3", "value": "V", "selected": true },
43                     { "name": "Option 4", "value": "V", "selected": false }
44                 ]
45             },
46             {
47                 "label": "Group 2",
48                 "options": [
49                     { "name": "Option 5", "value": "V", "selected": false },
50                     { "name": "Option 6", "value": "V", "selected": false }
51                 ]
52             }
53         ]
54     }
56 {{!
57     Setting configselect with optgroup support.
59 <div class="form-select defaultsnext">
60     <select {{#readonly}}disabled{{/readonly}} id="{{id}}" name="{{name}}" class="custom-select">
61         {{#options}}
62             <option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
63         {{/options}}
64         {{#optgroups}}
65             <optgroup label="{{label}}">
66                 {{#options}}
67                     <option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
68                 {{/options}}
69             </optgroup>
70         {{/optgroups}}
71     </select>
72 </div>