MDL-69454 core_search: consistent template library search
[moodle.git] / admin / tool / templatelibrary / templates / list_templates_page.mustache
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/>.
16 }}
17 {{!
18     @template tool_templatelibrary/list_templates_page
20     Moodle template to the template library
22     The purpose of this template is build the entire page for the template library (by including smaller templates).
24     Classes required for JS:
25     * none
27     Data attributes required for JS:
28     * data-region, data-field
30     Context variables required for this template:
31     * allcomponents - array of components containing templates. Each component has a name and a component attribute.
33 }}
34 {{!
35     This file is part of Moodle - http://moodle.org/
37     Moodle is free software: you can redistribute it and/or modify
38     it under the terms of the GNU General Public License as published by
39     the Free Software Foundation, either version 3 of the License, or
40     (at your option) any later version.
42     Moodle is distributed in the hope that it will be useful,
43     but WITHOUT ANY WARRANTY; without even the implied warranty of
44     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
45     GNU General Public License for more details.
47     You should have received a copy of the GNU General Public License
48     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
49 }}
50 {{!
51     @template tool_templatelibrary/list_templates_page
53     Moodle template to the template library
55     The purpose of this template is build the entire page for the template library (by including smaller templates).
57     Classes required for JS:
58     * none
60     Data attributes required for JS:
61     * data-region, data-field
63     Context variables required for this template:
64     * allcomponents - array of components containing templates. Each component has a name and a component attribute.
66 }}
67 <div data-region="list-templates">
68     <form class="form-horizontal">
69     {{< core_form/element-template }}
70         {{$label}}
71             <div class="col-form-label">{{#str}}component, tool_templatelibrary{{/str}}</div>
72         {{/label}}
74         {{$element}}
75             <select id="selectcomponent" class="form-control" data-field="component">
76                 <option value="">{{#str}}all, tool_templatelibrary{{/str}}</option>
77                 {{#allcomponents}}
78                     <option value="{{component}}">{{name}}</option>
79                 {{/allcomponents}}
80             </select>
81         {{/element}}
82     {{/ core_form/element-template }}
84     {{< core_form/element-template }}
85         {{$element}}
86             {{< core/search_input_auto }}
87                 {{$label}}{{{ searchstring }}}{{/label}}
88                 {{$placeholder}}{{#str}}
89                     search, core
90                 {{/str}}{{/placeholder}}
91             {{/ core/search_input_auto }}
92         {{/element}}
93     {{/ core_form/element-template }}
94     </form>
95     <hr/>
96     {{> tool_templatelibrary/search_results }}
98     <hr/>
99     {{> tool_templatelibrary/display_template }}
101 </div>
102 {{#js}}
103     require(['tool_templatelibrary/search', 'tool_templatelibrary/display']);
104 {{/js}}