- | {{#str}}discussion, mod_forum{{/str}} | -{{#str}}startedby, mod_forum{{/str}} | ++ {{#str}}status{{/str}} + | ++ {{#state.sortorder.isdiscussiondesc}} + {{#str}}discussion, mod_forum{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} + {{/state.sortorder.isdiscussiondesc}} + {{#state.sortorder.isdiscussionasc}} + {{#str}}discussion, mod_forum{{/str}} {{#pix}}t/uplong, core, {{#str}}asc, core{{/str}}{{/pix}} + {{/state.sortorder.isdiscussionasc}} + {{^state.sortorder.isdiscussiondesc}} + {{^state.sortorder.isdiscussionasc}} + {{#str}}discussion, mod_forum{{/str}} + {{/state.sortorder.isdiscussionasc}} + {{/state.sortorder.isdiscussiondesc}} + | {{#forum.state.groupmode}} -{{#str}}group{{/str}} | ++ {{#state.sortorder.isgroupdesc}} + {{#str}}group{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} + {{/state.sortorder.isgroupdesc}} + {{#state.sortorder.isgroupasc}} + {{#str}}group{{/str}} {{#pix}}t/uplong, core, {{#str}}asc, core{{/str}}{{/pix}} + {{/state.sortorder.isgroupasc}} + {{^state.sortorder.isgroupdesc}} + {{^state.sortorder.isgroupasc}} + {{#str}}group{{/str}} + {{/state.sortorder.isgroupasc}} + {{/state.sortorder.isgroupdesc}} + | {{/forum.state.groupmode}} - {{#forum.capabilities.viewdiscussions}} -- {{#state.sortorder.isrepliesdesc}} - {{#str}}replies, mod_forum{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} - {{/state.sortorder.isrepliesdesc}} - {{#state.sortorder.isrepliesasc}} - {{#str}}replies, mod_forum{{/str}} {{#pix}}t/uplong, core, {{#str}}asc, core{{/str}}{{/pix}} - {{/state.sortorder.isrepliesasc}} - {{^state.sortorder.isrepliesdesc}} - {{^state.sortorder.isrepliesasc}} - {{#str}}replies, mod_forum{{/str}} - {{/state.sortorder.isrepliesasc}} - {{/state.sortorder.isrepliesdesc}} - | - - {{#forum.userstate.tracked}} -- {{#str}}unread, mod_forum{{/str}} - {{#pix}}t/markasread, core, {{#str}}markallread, mod_forum{{/str}}{{/pix}} - | - {{/forum.userstate.tracked}} - {{/forum.capabilities.viewdiscussions}} ++ {{#state.sortorder.isstarterdesc}} + {{#str}}startedby, mod_forum{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} + {{/state.sortorder.isstarterdesc}} + {{#state.sortorder.isstarterasc}} + {{#str}}startedby, mod_forum{{/str}} {{#pix}}t/uplong, core, {{#str}}asc, core{{/str}}{{/pix}} + {{/state.sortorder.isstarterasc}} + {{^state.sortorder.isstarterdesc}} + {{^state.sortorder.isstarterasc}} + {{#str}}startedby, mod_forum{{/str}} + {{/state.sortorder.isstarterasc}} + {{/state.sortorder.isstarterdesc}} + | {{#state.sortorder.islastpostdesc}} {{#str}}lastpost, mod_forum{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} @@ -121,21 +137,27 @@ {{/state.sortorder.islastpostasc}} {{/state.sortorder.islastpostdesc}} | -- {{#state.sortorder.iscreateddesc}} - {{#str}}created, mod_forum{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} - {{/state.sortorder.iscreateddesc}} - {{#state.sortorder.iscreatedasc}} - {{#str}}created, mod_forum{{/str}} {{#pix}}t/uplong, core, {{#str}}asc, core{{/str}}{{/pix}} - {{/state.sortorder.iscreatedasc}} - {{^state.sortorder.iscreateddesc}} - {{^state.sortorder.iscreatedasc}} - {{#str}}created, mod_forum{{/str}} - {{/state.sortorder.iscreatedasc}} - {{/state.sortorder.iscreateddesc}} + {{#forum.capabilities.viewdiscussions}} + | + {{#state.sortorder.isrepliesdesc}} + {{#str}}replies, mod_forum{{/str}} {{#pix}}t/downlong, core, {{#str}}desc, core{{/str}}{{/pix}} + {{/state.sortorder.isrepliesdesc}} + {{#state.sortorder.isrepliesasc}} + {{#str}}replies, mod_forum{{/str}} {{#pix}}t/uplong, core, {{#str}}asc, core{{/str}}{{/pix}} + {{/state.sortorder.isrepliesasc}} + {{^state.sortorder.isrepliesdesc}} + {{^state.sortorder.isrepliesasc}} + {{#str}}replies, mod_forum{{/str}} + {{/state.sortorder.isrepliesasc}} + {{/state.sortorder.isrepliesdesc}} + {{#forum.userstate.tracked}} + {{#pix}}t/markasread, core, {{#str}}markallread, mod_forum{{/str}}{{/pix}} + {{/forum.userstate.tracked}} + | + {{/forum.capabilities.viewdiscussions}} ++ {{#str}}actions{{/str}} | -- | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+ | |||||||||||||||
{{#discussion.pinned}} {{#pix}}i/pinned, mod_forum, {{#str}}discussionpinned, mod_forum{{/str}}{{/pix}} {{/discussion.pinned}} @@ -154,146 +179,100 @@ {{/discussion}} {{/discussion.pinned}} | -- {{{discussion.name}}} - | -+ |
+
+
+ {{#shortentext}}100, {{{discussion.name}}}{{/shortentext}}
+
+
+
+
+ {{#str}}locked, forum{{/str}}
+
+
+ {{#str}}subscribed, forum{{/str}}
+
+ {{#discussion.timed.istimed}}
+
+
+
+ {{/discussion.timed.istimed}}
+
+ |
+ {{#forum.state.groupmode}}
+
+ {{#discussion.group}}
+ |
+ {{/forum.state.groupmode}}
+
{{#firstpostauthor}}
-
-
- {{fullname}}
+
{{/firstpostauthor}}
+
{{fullname}}
+
+ {{#userdate}}{{discussion.times.created}}, {{#str}}strftimedatemonthabbr, langconfig{{/str}}{{/userdate}}
+
|
- {{#forum.state.groupmode}}
-
- {{#discussion.group}}
- {{#urls.picture}}
- {{#urls.userlist}}
-
-
- {{/urls.userlist}}
- {{^urls.userlist}}
-
- |
- {{/forum.state.groupmode}}
- {{#forum.capabilities.viewdiscussions}}
- - - {{replies}} - - | - {{#forum.userstate.tracked}} -- {{#unread}} - {{! TODO Rewrite as AJAX}} - - {{unread}} - {{#pix}}t/markasread, core, {{#str}}markalldread, mod_forum{{/str}}{{/pix}} - - {{/unread}} - {{^unread}} - - 0 - - {{/unread}} - | - {{/forum.userstate.tracked}} - {{/forum.capabilities.viewdiscussions}} -+ |
{{! TODO Check q&a, eachuser }}
{{#latestpostid}}
-
-
+
+ {{#userdate}}
+ {{discussion.times.modified}}, {{#str}}strftimedateshortmonthabbr, langconfig{{/str}}
+ {{/userdate}}
+
{{/latestpostid}}
-
-
-
- |
- - {{#userdate}}{{discussion.times.created}}, {{#str}}strftimerecentfull{{/str}}{{/userdate}} - | -
- {{#discussion.timed.istimed}}
-
- {{#pix}}
- i/calendar, moodle,
- {{#discussion.times.start}}
- {{! }}{{#str}} displaystart, mod_forum {{/str}}: {{#userdate}}{{.}}, {{#str}}strftimerecentfull {{/str}}{{/userdate}}
- {{/discussion.times.start}}
- {{#discussion.times.end}}
- {{! }}{{#str}} displayend, mod_forum {{/str}}: {{#userdate}}{{.}}, {{#str}} strftimerecentfull {{/str}}{{/userdate}}
- {{/discussion.times.end}}
- {{#discussion.timed.visible}}
- {{! }}{{#str}} timedvisible, mod_forum {{/str}}
- {{/discussion.timed.visible}}
- {{^discussion.timed.visible}}
- {{! }}{{#str}} timedhidden, mod_forum {{/str}}
- {{/discussion.timed.visible}}
- {{/pix}}
-
- {{/discussion.timed.istimed}}
- |
- + {{#forum.capabilities.viewdiscussions}} + | + {{replies}} + {{#forum.userstate.tracked}} + {{#unread}} + {{! TODO Rewrite as AJAX}} + + + {{unread}} + + + {{/unread}} + {{/forum.userstate.tracked}} + | + {{/forum.capabilities.viewdiscussions}} +
{{#discussion}}
-
-
{{#js}}
-require(['jquery', 'mod_forum/discussion', 'mod_forum/posts_list', 'mod_forum/lock_toggle', 'mod_forum/favourite_toggle', 'mod_forum/pin_toggle'],
- function($, Discussion, PostsList, LockToggle, FavouriteToggle, Pin) {
+require(['jquery', 'mod_forum/discussion', 'mod_forum/posts_list', 'mod_forum/lock_toggle', 'mod_forum/favourite_toggle',
+ 'mod_forum/pin_toggle', 'mod_forum/subscription_toggle'],
+ function($, Discussion, PostsList, LockToggle, FavouriteToggle, Pin, SubscribeToggle) {
var root = $("[data-content='forum-discussion']");
Discussion.init(root);
PostsList.init(root);
@@ -70,5 +69,6 @@ require(['jquery', 'mod_forum/discussion', 'mod_forum/posts_list', 'mod_forum/lo
LockToggle.init(root);
FavouriteToggle.init(root);
Pin.init(root);
+ SubscribeToggle.init(root);
});
{{/js}}
\ No newline at end of file
diff --git a/mod/forum/templates/mark_as_read.mustache b/mod/forum/templates/mark_as_read.mustache
new file mode 100644
index 00000000000..a5296678c70
--- /dev/null
+++ b/mod/forum/templates/mark_as_read.mustache
@@ -0,0 +1,40 @@
+{{!
+ 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
- {{#pix}}i/lock, core, {{#str}}locked, forum{{/str}}{{/pix}}
-
- {{#forum.capabilities.subscribe}}
-
- {{> mod_forum/discussion_subscription_toggle}}
-
- {{/forum.capabilities.subscribe}}
+
{{#hasanyactions}}
-
{{/discussion}}
diff --git a/mod/forum/templates/discussion_subscription_toggle.mustache b/mod/forum/templates/discussion_subscription_toggle.mustache
index 9817f9519de..00d0dfe8040 100644
--- a/mod/forum/templates/discussion_subscription_toggle.mustache
+++ b/mod/forum/templates/discussion_subscription_toggle.mustache
@@ -26,16 +26,26 @@
* none
Context variables required for this template:
- * TODO
+ * capabilities Object - Uses the "subscribe" attribute to determine whether to render the subscribe action.
+ * urls Object - Uses the "subscribe" attribute for the subscription URl.
+ * id int - The discussion ID.
+ * forumid int - The forum ID.
+ * userstate Object - Uses the "subscribed" attribute to determine the action that will be performed upon toggling.
Example context (json):
{
+ "capabilities": { "subscribe": true },
+ "urls": { "subscribe": "#" },
+ "id": 1,
+ "forumid": 1,
+ "userstate": { "subscribed": true }
}
}}
{{#capabilities.subscribe}}
{{#userstate.subscribed}}
- {{#pix}}t/subscribed, mod_forum, {{#str}}clicktounsubscribe, mod_forum{{/str}}{{/pix}}
+ {{#str}}unsubscribediscussion, forum{{/str}}
{{/userstate.subscribed}}
{{^userstate.subscribed}}
- {{#pix}}t/unsubscribed, mod_forum, {{#str}}clicktosubscribe, mod_forum{{/str}}{{/pix}}
+ {{#str}}subscribediscussion, forum{{/str}}
{{/userstate.subscribed}}
{{/capabilities.subscribe}}
diff --git a/mod/forum/templates/discussion_times.mustache b/mod/forum/templates/discussion_times.mustache
new file mode 100644
index 00000000000..e35828d1513
--- /dev/null
+++ b/mod/forum/templates/discussion_times.mustache
@@ -0,0 +1,59 @@
+{{!
+ 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
- {{> mod_forum/forum_action_menu}}
-
+
+ {{> mod_forum/forum_action_menu}}
+
{{/hasanyactions}}
-
-
diff --git a/mod/forum/templates/forum_discussion.mustache b/mod/forum/templates/forum_discussion.mustache
index 8d661ff1648..6ce8e44150f 100644
--- a/mod/forum/templates/forum_discussion.mustache
+++ b/mod/forum/templates/forum_discussion.mustache
@@ -34,13 +34,11 @@
{{#html}}
{{#hasanyactions}}
\ No newline at end of file
+
-
{{/hasanyactions}}
{{{neighbourlinks}}}
@@ -61,8 +59,9 @@
{{#html.neighbourlinks}}{{{.}}}{{/html.neighbourlinks}}
{{{subscribe}}}
|