diff options
author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-03-17 11:11:22 +0100 |
---|---|---|
committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-03-17 11:48:51 +0100 |
commit | b9036ba61012e6723426f98171a2c111abb0bae5 (patch) | |
tree | a249a06e9e80a7db1f2ae53dc8ae99402492eef7 /app/models/issue.rb | |
parent | dda7f9635fe96eba52110979914ff966188f6e8b (diff) | |
download | gitlab-ce-b9036ba61012e6723426f98171a2c111abb0bae5.tar.gz |
Prevent issue move if issue has been already moved
Diffstat (limited to 'app/models/issue.rb')
-rw-r--r-- | app/models/issue.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb index b506d174155..6a016636e0d 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -123,4 +123,16 @@ class Issue < ActiveRecord::Base note.all_references(current_user).merge_requests end.uniq.select { |mr| mr.open? && mr.closes_issue?(self) } end + + def moved? + !moved_to.nil? + end + + def can_move?(user, to_project = nil) + if to_project + return false unless user.can?(:admin_issue, to_project) + end + + !moved? && user.can?(:admin_issue, self.project) + end end |