103 lines
2.9 KiB
Plaintext
103 lines
2.9 KiB
Plaintext
{{!
|
|
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_folder/folder
|
|
|
|
Template for displaying folder resource.
|
|
|
|
Classes required for JS:
|
|
* none
|
|
|
|
Data attributes required for JS:
|
|
* none
|
|
|
|
Example context (json):
|
|
{
|
|
"id": 42,
|
|
"showexpanded": true,
|
|
"buttons": {
|
|
"edit_button": {
|
|
"id": "edit_button",
|
|
"label": "Edit",
|
|
"url": "/mod/folder/edit.php",
|
|
"classes": "navitem"
|
|
},
|
|
"download_button": {
|
|
"id": "download_button",
|
|
"label": "Download",
|
|
"url": "/mod/folder/download.php",
|
|
"classes": "navitem"
|
|
}
|
|
},
|
|
"dir": [
|
|
{
|
|
"name": "Folder",
|
|
"icon": "<img src='icon' alt='alt'>",
|
|
"hassubdirs": true,
|
|
"subdirs": [
|
|
{
|
|
"name": "File1",
|
|
"icon": "<img src='icon' alt='alt'>",
|
|
"hassubdirs": false,
|
|
"subdirs": null
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "File2",
|
|
"icon": "<img src='icon' alt='alt'>",
|
|
"hassubdirs": false,
|
|
"subdirs": null
|
|
}
|
|
]
|
|
}
|
|
}}
|
|
|
|
<div class="flex-fill description-inner text-break">
|
|
{{{intro}}}
|
|
{{#hasbuttons}}
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
{{#edit_button}}
|
|
{{>core/single_button}}
|
|
{{/edit_button}}
|
|
{{#download_button}}
|
|
{{>core/single_button}}
|
|
{{/download_button}}
|
|
</div>
|
|
</div>
|
|
{{/hasbuttons}}
|
|
<div class="box generalbox pt-0 pb-3 foldertree">
|
|
<div id="{{{id}}}" class="filemanager">
|
|
{{#dir}}
|
|
<ul>
|
|
<li>
|
|
{{>mod_folder/tree}}
|
|
</li>
|
|
</ul>
|
|
{{/dir}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{{#js}}
|
|
// Init tree JS.
|
|
require(['mod_folder/folder'], function(Folder) {
|
|
Folder.initTree('{{{id}}}', '{{{showexpanded}}}');
|
|
});
|
|
{{/js}}
|