Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/discussions/unresolve_service.rb')
-rw-r--r--app/services/discussions/unresolve_service.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/app/services/discussions/unresolve_service.rb b/app/services/discussions/unresolve_service.rb
index fbd96ceafe7..f6685b79a33 100644
--- a/app/services/discussions/unresolve_service.rb
+++ b/app/services/discussions/unresolve_service.rb
@@ -12,10 +12,27 @@ module Discussions
end
def execute
+ @all_discussions_resolved_before = merge_request ? @discussion.noteable.discussions_resolved? : false
+
@discussion.unresolve!
+ send_graphql_triggers
+
Gitlab::UsageDataCounters::MergeRequestActivityUniqueCounter
.track_unresolve_thread_action(user: @user)
end
+
+ private
+
+ def merge_request
+ @discussion.noteable if @discussion.for_merge_request?
+ end
+ strong_memoize_attr :merge_request
+
+ def send_graphql_triggers
+ return unless merge_request && @all_discussions_resolved_before
+
+ GraphqlTriggers.merge_request_merge_status_updated(merge_request)
+ end
end
end