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:
authorJarka Kadlecova <kadlecovaj@gmail.com>2016-11-24 17:05:15 +0300
committerJarka Kadlecova <jarka@gitlab.com>2017-01-11 16:48:07 +0300
commit7ab3dd4b302a85c1b005e9ef290ebac631cda673 (patch)
tree9210fbc8f4e53c33970e6218c822de95c8963288 /app/models/merge_request.rb
parent4404ea8662508c60f96e6730d9a45feb68498c28 (diff)
support `/merge` slash comand for MRs
Diffstat (limited to 'app/models/merge_request.rb')
-rw-r--r--app/models/merge_request.rb14
1 files changed, 13 insertions, 1 deletions
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb
index 70005a87f4b..10251302db8 100644
--- a/app/models/merge_request.rb
+++ b/app/models/merge_request.rb
@@ -898,10 +898,22 @@ class MergeRequest < ActiveRecord::Base
end
def has_commits?
- commits_count > 0
+ merge_request_diff && commits_count > 0
end
def has_no_commits?
!has_commits?
end
+
+ def mergeable_with_slash_command?(current_user, autocomplete_precheck: false, last_diff_sha: nil)
+ return false unless can_be_merged_by?(current_user)
+
+ return true if autocomplete_precheck
+
+ return false unless mergeable?(skip_ci_check: true)
+ return false if head_pipeline && !(head_pipeline.success? || head_pipeline.active?)
+ return false if last_diff_sha != diff_head_sha
+
+ true
+ end
end