MDL-68169 user: Limit the number of filter conditions
[moodle.git] / user / templates / participantsfilter.mustache
CommitLineData
77ba77f1
AN
1{{!
2 This file is part of Moodle - http://moodle.org/
3
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.
8
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.
13
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/>.
16}}
17{{!
18 @template core_user/participantsfilter
19
20 Template for the form containing one or more filter rows.
21
22 Example context (json):
23 {
24 "filtertypes": [
25 {
26 "name": "status",
27 "title": "Status",
28 "values": [
29 {
30 "value": 1,
31 "title": "Active"
32 },
33 {
34 "value": 0,
35 "title": "Suspended"
36 }
37 ]
38 }
39 ]
40 }
41}}
42
110f3ebf
AN
43<div id="core_user-participantsfilter-{{uniqid}}" class="filter-group mt-5 p-3 rounded border border-secondary" data-table-region="{{tableregionid}}" data-table-course-id="{{courseid}}" data-filterverb="1">
44 <div data-filterregion="filtermatch" class="hidden">
45 <label for="core_user-local-participantsfilter-jointype-{{uniqid}}" class="pt-2">{{#str}}match, core_user{{/str}}</label>
46 <select class="custom-select" data-filterfield="join" id="core_user-local-participantsfilter-jointype-{{uniqid}}">
47 <option value="0">{{#str}}none{{/str}}</option>
48 <option selected=selected value="1">{{#str}}any{{/str}}</option>
49 <option value="2">{{#str}}all{{/str}}</option>
50 </select>
51 </div>
52
77ba77f1
AN
53 <div data-filterregion="filters">
54 {{> core_user/local/participantsfilter/filterrow }}
55 </div>
56
57 <div class="display-block" data-filterregion="actions">
58 &nbsp;
59 <button type="button" class="btn btn-link d-inline-block float-left" data-filteraction="add">
60 <i class="fa fa-plus"></i><span class="pl-3">{{#str}}addcondition, core_user{{/str}}</span>
61 </button>
62
63 <div class="float-right">
64 <button data-filteraction="reset" type="button" class="btn btn-light d-inline-block">{{#str}}clearfilters, core_user{{/str}}</button>
65 <button data-filteraction="apply" type="button" class="btn btn-primary d-inline-block">{{#str}}applyfilters, core_user{{/str}}</button>
66 </div>
67 </div>
68
69 {{> core_user/local/participantsfilter/filtertypes}}
70</div>
71
72{{#js}}
73require(['core_user/participantsfilter'], function(ParticipantsFilter) {
74 ParticipantsFilter.init('core_user-participantsfilter-{{uniqid}}');
75});
76{{/js}}