MDL-64953 templates: Add example contexts & documentation
authorMathew May <mathewm@hotmail.co.nz>
Mon, 8 Apr 2019 08:32:36 +0000 (16:32 +0800)
committerMathew May <mathewm@hotmail.co.nz>
Tue, 6 Aug 2019 02:56:16 +0000 (10:56 +0800)
This is a follow up from CiBot warnings from MDL-58428

26 files changed:
blocks/search_forums/templates/search_form.mustache
blocks/settings/templates/search_form.mustache
course/templates/course_search_form.mustache
grade/report/history/templates/user_button.mustache
grade/report/singleview/templates/bulk_insert.mustache
grade/report/singleview/templates/button.mustache
grade/report/singleview/templates/dropdown_attribute.mustache
grade/report/singleview/templates/text_attribute.mustache
grade/templates/edit_tree.mustache
grade/templates/weight_field.mustache
grade/templates/weight_override_field.mustache
lib/behat/classes/behat_config_util.php
lib/outputrenderers.php
lib/templates/custom_menu_item.mustache
lib/templates/filemanager_confirmdialog.mustache
lib/templates/filemanager_default_searchform.mustache
lib/templates/filemanager_fileselect.mustache
lib/templates/filemanager_modal_generallayout.mustache
lib/templates/filemanager_page_generallayout.mustache
lib/templates/filemanager_processexistingfile.mustache
lib/templates/filemanager_processexistingfilemultiple.mustache
lib/templates/filemanager_selectlayout.mustache
lib/templates/filemanager_uploadform.mustache
lib/templates/full_header.mustache
lib/templates/preferences_groups.mustache
mod/forum/templates/quick_search_form.mustache

index 0dc8b87..b5f8133 100644 (file)
@@ -1,3 +1,32 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template block_search_forums/search_form
+
+    This template renders the search form.
+
+    Example context (json):
+    {
+        "actionurl": "https://domain.example/mod/forum/search.php",
+        "courseid": "2",
+        "advancedsearchurl": "https://domain.example/mod/forum/search.php?id=2",
+        "helpicon": "<a class='btn'><i class='icon fa fa-question-circle'></i></a>"
+    }
+}}
 <div class="searchform">
     <form action="{{actionurl}}" class="form-inline">
         <input type="hidden" name="id" value="{{courseid}}">
index 765122a..2ae6011 100644 (file)
@@ -1,3 +1,32 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template block_settings/search_form
+
+    This template renders the search form.
+
+    Example context (json):
+    {
+        "action": "https://domain.example/admin/search.php",
+        "label": "Search in settings",
+        "searchvalue": "Find this setting",
+        "quote": "Search"
+    }
+}}
 <form method="get" action="{{action}}" class="adminsearchform form-inline" role="search">
     <div class="form-group">
         <label class="sr-only" for="adminsearchquery">{{label}}</label>
index c2e729a..d709096 100644 (file)
     You should have received a copy of the GNU General Public License
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
+{{!
+    @template core_course/course_search_form
+
+    This template renders the search form.
+
+    Example context (json):
+    {
+        "searchurl": "https://domain.example/course/search.php",
+        "id": "coursesearch",
+        "inputid": "coursesearchbox",
+        "inputsize": "30",
+        "value": "Find in course",
+        "helpicon": "<a class='btn'><i class='icon fa fa-question-circle'></i></a>"
+    }
+}}
 <form action="{{searchurl}}" id="{{id}}" method="get" class="form-inline">
     <fieldset class="coursesearchbox invisiblefieldset">
         <label for="{{inputid}}">{{#str}}searchcourses{{/str}}</label>
index 90e8b70..15cd130 100644 (file)
@@ -1,3 +1,45 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template gradereport_history/user_button
+
+    Template which defines a forum post for sending in a single-post HTML email.
+
+    Classes required for JS:
+    * none
+
+    Data attributes required for JS:
+    * none
+
+    Example context (json):
+    {
+        "name": "showreport",
+        "label": "Select users",
+        "value": "1",
+        "classes": "singlebutton selectusersbutton gradereport_history_plugin",
+        "method": "get",
+        "url": "/grade/report/history/index.php",
+        "formid": "selectusersbutton{generated}",
+        "params": "true",
+        "id": "single_button{generated}",
+        "tooltip": "Select users",
+        "disabled": ""
+    }
+}}
 <div class="{{classes}}">
     <div method="{{method}}" action="{{url}}" id="{{formid}}">
         {{#params}}
index abe592a..82ce32f 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
+    @template gradereport_singleview/bulk_insert
+
     Bulk insert attribute.
+
+    Example context (json):
+    {
+        "applyname": "Apply-name",
+        "applylabel": "Perform bulk insert",
+        "label": "Bulk insert",
+        "menuname": "Menu-name",
+        "menulabel": "For",
+        "menuoptions": "JSON object",
+        "value": "all",
+        "selected": "",
+        "name": "All grades",
+        "valuename": "Value-name",
+        "valuelabel": "Insert value",
+        "valuefield": "PARSED HTML"
+    }
 }}
 <div class="enable">
     <input type="checkbox" name="{{applyname}}" value="1" id="{{applyname}}">
index 43fdbcf..5d43733 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
+    @template gradereport_singleview/button
+
     Button.
+
+    Example context (json):
+    {
+        "type": "submit",
+        "value": "Save"
+    }
 }}
 <input type="{{type}}" value={{#quote}}{{value}}{{/quote}} class="btn btn-secondary">
index 9f3be1a..436c685 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
+    @template gradereport_singleview/dropdown_attribute
+
     Dropdown attribute.
+
+    Example context (json):
+    {
+        "name": "Awesome-test",
+        "disabled": "true",
+        "options": "true",
+        "value": "1",
+        "selected": "true"
+    }
 }}
 <select id="{{name}}" name="{{name}}" class="custom-select" tabindex="1" {{#disabled}}disabled{{/disabled}}>
     {{#options}}
index ffd06e9..6c73b9c 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
+    @template gradereport_singleview/text_attribute
+
     Text attribute.
+
+    Example context (json):
+    {
+        "name": "Awesome-report",
+        "label": "Text label",
+        "value": "Text information",
+        "tabindex": "1",
+        "disabled": "true"
+    }
 }}
 <label for="{{name}}" class="accesshide">{{label}}</label>
 <input id="{{name}}" name="{{name}}" type="text" value="{{value}}" class="form-control" {{#tabindex}}tabindex="{{.}}"{{/tabindex}} {{#disabled}}disabled{{/disabled}}>
index 129e286..5c4c539 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
+    @template core_grades/edit_tree
+
     Edit tree.
+
+    Example context (json):
+    {
+        "actionurl": "https://domain.example/grade/edit/tree/index.php?id=4",
+        "sesskey": "fakesesskey",
+        "notification": "",
+        "table": "<table class='generaltable simple setup-grades' id='grade_edit_tree_table'><thead> <tr><th>Name</th><th>Weights</th><th>Max grade</th><th>Actions</th> </tr></thead><tbody></tbody></table>",
+        "showsave": "true",
+        "showbulkmove": "true",
+        "bulkmoveoptions": "{'value' : '1', 'name' : 'Test grade category'}",
+        "value": "1",
+        "name": "Test grade category"
+    }
 }}
 
 <form id="gradetreeform" method="post" action="{{actionurl}}">
index 3ee641b..8b9c114 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
+    @template core_grades/weight_field
+
     Weight field.
+
+    Example context (json):
+    {
+        "itemname": "Awesome test",
+        "id": "2",
+        "value": "100"
+    }
 }}
 <label class="accesshide" for="weight_{{id}}">
     {{#str}}extracreditvalue, grades, {{itemname}}{{/str}}
index 0ed8292..5d3cffd 100644 (file)
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
-    Weight field.
+    @template core_grades/weight_override_field
+
+    Weight override field.
+
+    Example context (json):
+    {
+        "itemname": "Awesome test",
+        "id": "2",
+        "checked": "true",
+        "value": "100"
+    }
 }}
 <div class="form-inline">
     <label class="accesshide" for="weightoverride_{{id}}">
index 2121f7a..8bd3815 100644 (file)
@@ -1232,7 +1232,7 @@ class behat_config_util {
      * Return the theme config for a given theme name.
      * This is done so we can mock it in PHPUnit.
      *
-     * @param $themename name of theme
+     * @param string $themename name of theme
      * @return theme_config
      */
     public function get_theme_config($themename) {
index fc94f17..543adf1 100644 (file)
@@ -383,7 +383,7 @@ class renderer_base {
     /**
      * Whether we should display the main logo.
      *
-     * @param int $headinglevel
+     * @param int $headinglevel The heading level we want to check against.
      * @return bool
      */
     public function should_display_main_logo($headinglevel = 1) {
index 9bcc29e..42f1fbc 100644 (file)
@@ -1,3 +1,35 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/custom_menu_item
+
+    This template renders a node as part of a submenu.
+
+    Example context (json):
+    {
+        "divider": "",
+        "haschildren": "1",
+        "uniqid": "Unique string",
+        "text": "Moodle community",
+        "children": "[custom_menu_item object]",
+        "title": "Moodle community",
+        "url": "https://moodle.org"
+    }
+}}
 {{^divider}}
 {{#haschildren}}
 <li class="dropdown nav-item">
index 740806e..2ca8193 100644 (file)
@@ -1,5 +1,29 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_confirmdialog
+
+    This template renders the popup confirm dialogue windows.
+
+    Example context (json):
+    {}
+}}
 <div class="filemanager fp-dlg">
     <p class="fp-dlg-text"></p>
     <button class="fp-dlg-butconfirm btn-primary btn">{{#str}}ok{{/str}}</button>
     <button class="fp-dlg-butcancel btn-secondary btn">{{#str}}cancel{{/str}}</button>
-</div>
\ No newline at end of file
+</div>
index 21e5223..1e6b24a 100644 (file)
@@ -1,4 +1,28 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_default_searchform
+
+    This template renders the default repository searchform to be passed to Filepicker.
+
+    Example context (json):
+    {}
+}}
 <div class="fp-def-search form-group">
     <label class="sr-only">{{#str}}searchrepo, repository{{/str}}</label>
     <input type="search" class="form-control" id="reposearch" name="s" placeholder="{{#str}}search, repository{{/str}}"/>
-</div>
\ No newline at end of file
+</div>
index 64fb76e..83d9306 100644 (file)
@@ -1,3 +1,29 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_fileselect
+
+    This template renders the window with file information/actions.
+
+    Example context (json):
+    {
+        "helpicon": "<a class='btn ..'><i class='icon fa fa-question-circle ..'></i></a>"
+    }
+}}
 <div class="filemanager fp-select">
     <div class="fp-select-loading">
         {{#pix}}i/loading_small{{/pix}}
index 7a16342..f9112c2 100644 (file)
@@ -1,3 +1,27 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_modal_generallayout
+
+    This template renders the general layout (not QuickUpload).
+
+    Example context (json):
+    {}
+}}
 <div class="container">
     <div tabindex="0" class="file-picker fp-generallayout row" role="dialog" aria-live="assertive">
         <div class="fp-repo-area col-md-3 pr-2 nav nav-pills flex-column" role="tablist">
@@ -60,4 +84,4 @@
             </div>
         </div>
     </div>
-</div>
\ No newline at end of file
+</div>
index c010fbe..678f40b 100644 (file)
@@ -1,3 +1,31 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_page_generallayout
+
+    This template renders the html for displaying one file manager
+
+    Example context (json):
+    {
+        "client_id": "Unique-string",
+        "restrictions": "<span>Maximum size for new files: Unlimited</span>",
+        "helpicon": "<a class='btn'><i class='icon fa fa-question-circle'></i></a>"
+    }
+}}
 <div id="filemanager-{{{client_id}}}" class="filemanager w-100 fm-loading">
     <div class="fp-restrictions">
         {{{restrictions}}}
index 18714ac..dbf530f 100644 (file)
@@ -1,3 +1,27 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_processexistingfile
+
+    This template renders the popup dialogue window asking for action when file with the same name already exists.
+
+    Example context (json):
+    {}
+}}
 <div class="file-picker fp-dlg">
     <p class="fp-dlg-text"></p>
     <div class="fp-dlg-buttons">
@@ -5,4 +29,4 @@
         <button class="fp-dlg-butrename btn btn-primary"></button>
         <button class="fp-dlg-butcancel btn btn-secondary">{{#str}}cancel{{/str}}</button>
     </div>
-</div>
\ No newline at end of file
+</div>
index aae3125..760b1a1 100644 (file)
@@ -1,3 +1,28 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_processexistingfilemultiple
+
+    This template renders the popup dialogue window asking for action when file with the same name already exists
+     * (multiple-file version).
+
+    Example context (json):
+    {}
+}}
 <div class="file-picker fp-dlg">
     <p class="fp-dlg-text"></p>
     <a class="fp-dlg-butoverwrite btn btn-primary" href="#">{{#str}}overwrite, repository{{/str}}</a>
@@ -6,4 +31,4 @@
     <br/>
     <a class="fp-dlg-butoverwriteall btn btn-primary" href="#">{{#str}}overwriteall, repository{{/str}}</a>
     <a class="fp-dlg-butrenameall btn btn-primary" href="#">{{#str}}renameall, repository{{/str}}</a>
-</div>
\ No newline at end of file
+</div>
index d27da6e..0f4f5b9 100644 (file)
@@ -1,3 +1,27 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_selectlayout
+
+    This template renders the window appearing to select a file.
+
+    Example context (json):
+    {}
+}}
 <div class="file-picker fp-select">
     <div class="fp-select-loading">
         <span class="sr-only">{{#str}}loadinghelp{{/str}}</span>
index b3aec8e..7e83169 100644 (file)
@@ -1,3 +1,27 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/filemanager_uploadform
+
+    This template renders the 'Upload file' repository.
+
+    Example context (json):
+    {}
+}}
 <div class="fp-upload-form">
     <div class="fp-content-center">
         <form enctype="multipart/form-data" method="POST" class="form">
@@ -26,4 +50,4 @@
             <button class="fp-upload-btn btn-primary btn">{{#str}}upload, repository{{/str}}</button>
         </div>
     </div>
-</div>
\ No newline at end of file
+</div>
index cd72ee6..1954bb2 100644 (file)
@@ -15,7 +15,7 @@
     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 }}
 {{!
-    @template boost/header
+    @template core/full_header
 
     This template renders the header.
 
@@ -27,8 +27,6 @@
         "navbar": "navbar_if_available",
         "courseheader": "course_header_html"
     }
-
-    Page header.
 }}
 <header id="page-header" class="row">
     <div class="col-12 pt-3 pb-3">
@@ -63,4 +61,4 @@
             </div>
         </div>
     </div>
-</header>
\ No newline at end of file
+</header>
index de16bc4..676bd60 100644 (file)
@@ -1,4 +1,33 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
 
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template core/preferences_groups
+
+    This template renders the preferences groups.
+
+    Example context (json):
+    {
+        "groups": "[preferences_group Object]",
+        "nodes": "navigation_node_collection Object",
+        "get_title": "User account",
+        "action": "https://domain.example/user/editadvanced.php?id=2&course=1",
+        "get_content": "Edit profile"
+    }
+}}
     <div class="row">
         {{#groups}}
             <div class="col-md-4">
index eee32f5..e3d17c5 100644 (file)
@@ -1,3 +1,32 @@
+{{!
+    This file is part of Moodle - http://moodle.org/
+
+    Moodle is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    Moodle is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+}}
+{{!
+    @template mod_forum/quick_search_form
+
+    This template renders the search form within forums.
+
+    Example context (json):
+    {
+        "actionurl": "https://domain.example/mod/forum/search.php",
+        "courseid": "2",
+        "helpicon": "<a class='btn'><i class='icon fa fa-question-circle'></i></a>",
+        "query": "find this post"
+    }
+}}
 <div class="forumsearch">
     <form action="{{actionurl}}" class="form-inline">
         <input type="hidden" name="id" value="{{courseid}}">