diff --git a/lms/static/coffee/src/discussion/discussion.coffee b/lms/static/coffee/src/discussion/discussion.coffee index d30fdc70a8..272a4949e0 100644 --- a/lms/static/coffee/src/discussion/discussion.coffee +++ b/lms/static/coffee/src/discussion/discussion.coffee @@ -42,9 +42,14 @@ if Backbone? DiscussionUtil.safeAjax $elem: $elem $loading: $elem + loadingCallback: -> + $(this).parent().append("") + loadedCallback: -> + $(this).parent().children(".discussion-loading").remove() url: url type: "GET" success: (response, textStatus) => + return $parent = @$el.parent() @$el.replaceWith(response.html) $discussion = $parent.find("section.discussion") diff --git a/lms/static/coffee/src/discussion/utils.coffee b/lms/static/coffee/src/discussion/utils.coffee index 727b43b348..94807654c9 100644 --- a/lms/static/coffee/src/discussion/utils.coffee +++ b/lms/static/coffee/src/discussion/utils.coffee @@ -72,11 +72,17 @@ class @DiscussionUtil params["beforeSend"] = -> $elem.attr("disabled", "disabled") if params["$loading"] - params["$loading"].loading() + if params["loadingCallback"]? + params["loadingCallback"].apply(params["$loading"]) + else + params["$loading"].loading() $.ajax(params).always -> $elem.removeAttr("disabled") if params["$loading"] - params["$loading"].loaded() + if params["loadedCallback"]? + params["loadedCallback"].apply(params["$loading"]) + else + params["$loading"].loaded() @get: ($elem, url, data, success) -> @safeAjax