diff --git a/mod/forum/amd/build/discussion_list.min.js b/mod/forum/amd/build/discussion_list.min.js
index 0f7bc8b3328..3f7502340cc 100644
--- a/mod/forum/amd/build/discussion_list.min.js
+++ b/mod/forum/amd/build/discussion_list.min.js
@@ -1 +1 @@
-define(["mod_forum/subscription_toggle"],function(a){return{init:function(b){a.init(b)}}});
\ No newline at end of file
+define(["jquery","mod_forum/subscription_toggle","mod_forum/selectors","mod_forum/repository"],function(a,b,c,d){var e=function(b){b.on("click",c.favourite.toggle,function(){var b=a(this),c=b.data("forumid"),e=b.data("discussionid"),f=b.data("targetstate");d.toggleFavouriteDiscussionState(c,e,f).then(function(){location.reload()})["catch"](Notification.exception)})};return{init:function(a){b.init(a),e(a)}}});
\ No newline at end of file
diff --git a/mod/forum/amd/src/discussion_list.js b/mod/forum/amd/src/discussion_list.js
index b40d18be45e..aed341dc4c6 100644
--- a/mod/forum/amd/src/discussion_list.js
+++ b/mod/forum/amd/src/discussion_list.js
@@ -33,13 +33,13 @@ define([
Repository
) {
var registerEventListeners = function(root) {
- root.on('click', Selectors.favourite.toggle, function(e) {
+ root.on('click', Selectors.favourite.toggle, function() {
var toggleElement = $(this);
var forumId = toggleElement.data('forumid');
var discussionId = toggleElement.data('discussionid');
var subscriptionState = toggleElement.data('targetstate');
Repository.toggleFavouriteDiscussionState(forumId, discussionId, subscriptionState)
- .then(function(context) {
+ .then(function() {
location.reload();
})
.catch(Notification.exception);
diff --git a/mod/forum/externallib.php b/mod/forum/externallib.php
index 38789786668..6a5853e1efb 100644
--- a/mod/forum/externallib.php
+++ b/mod/forum/externallib.php
@@ -1149,7 +1149,7 @@ class mod_forum_external extends external_api {
return discussion_exporter::get_read_structure();
}
- public function toggle_favourite_state_parameters() {
+ public static function toggle_favourite_state_parameters() {
return new external_function_parameters(
[
'forumid' => new external_value(PARAM_INT, 'Forum that the discussion is in'),
diff --git a/mod/forum/templates/discussion_list.mustache b/mod/forum/templates/discussion_list.mustache
index 6d68c189408..2bc1080453a 100644
--- a/mod/forum/templates/discussion_list.mustache
+++ b/mod/forum/templates/discussion_list.mustache
@@ -222,7 +222,7 @@
{{> mod_forum/discussion_subscription_toggle}}
-
+
{{> mod_forum/forum_action_menu}}
diff --git a/mod/forum/templates/forum_action_menu.mustache b/mod/forum/templates/forum_action_menu.mustache
index 9ccb15f78f1..a019ffc7ca5 100644
--- a/mod/forum/templates/forum_action_menu.mustache
+++ b/mod/forum/templates/forum_action_menu.mustache
@@ -27,6 +27,7 @@