MDL-76907 lib: Set Moodle files after minify upgrade
[moodle.git] / message / templates / notification_preferences.mustache
blob58ad3bfde1a05d977e98b7962c63369d5b1272e8
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_message/notification_preferences
20     The list of notifications for the notification preferences page
22     Classes required for JS:
23     * None
25     Data attibutes required for JS:
26     * All data attributes are required
28     Context variables required for this template:
29     * userid The logged in user id
30     * disableall If the user has disabled notifications
31     * components The list of notification components
33     Example context (json):
34     {
35         "userid": 1,
36         "disableall": 0,
37         "processors": [
38             {
39                 "displayname": "Popup notification",
40                 "name": "popup",
41                 "hassettings": 1,
42                 "userid": 3,
43                 "contextid": 3
44             }
45         ],
46         "components": [
47             {
48                 "displayname": "System",
49                 "colspan": 2,
50                 "hasnotifications": 1,
51                 "notifications": [
52                     {
53                         "displayname": "Notices about minor problems",
54                         "preferencekey": "message_provider_moodle_notices",
55                         "processors": [
56                             {
57                                 "displayname": "Popup notification",
58                                 "name": "popup",
59                                 "locked": 0,
60                                 "userconfigured": 1,
61                                 "enabled": 1,
62                                 "enabledlabel": "Sending Assignment enabled status"
63                             }
64                         ]
65                     }
66                 ]
67             }
68         ]
69     }
71 <div class="preferences-page-container">
72     <h2>{{#str}} notificationpreferences, message {{/str}}</h2>
73     <div class="checkbox-container" data-region="disable-notification-container">
74         <input id="disable-notifications"
75            type="checkbox"
76            data-disable-notifications
77            {{#disableall}}checked{{/disableall}} />
78         <label for="disable-notifications">{{#str}} disableall, message {{/str}}</label>
79         {{> core/loading }}
80     </div>
81     <div class="preferences-container {{#disableall}}disabled{{/disableall}}" data-user-id="{{userid}}">
82         <table class="table preference-table">
83             <thead>
84                 <tr>
85                     <th>{{{displayname}}}</th>
86                     {{#processors}}
87                         {{> message/notification_preferences_processor }}
88                     {{/processors}}
89                 </tr>
90             </thead>
91             <tbody>
92                 {{#components}}
93                     {{> message/notification_preferences_component }}
94                 {{/components}}
95             </tbody>
96         </table>
97     </div>
98 </div>
99 {{#js}}
100 require(['jquery', 'core_message/preferences_notifications_list_controller'],
101     function($, Controller) {
103     new Controller($('.preferences-container'));
105 {{/js}}