summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-11-05 15:16:29 +0000
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-11-05 15:16:29 +0000
commit94f8b51cb39ccad5dc5031688c4b87a93227fe1b (patch)
tree34c50c55bccf13b610f9a81f2049ec3eb7ec3035 /app/models
parentb813a4888a8755a0944fbe96c6fd35485137bf3c (diff)
parentd78b6ce4cc01ac5da52246c149f57de456b904ae (diff)
downloadgitlab-ce-94f8b51cb39ccad5dc5031688c4b87a93227fe1b.tar.gz
Merge branch 'feature/leave_project' of /home/git/repositories/gitlab/gitlabhq
Diffstat (limited to 'app/models')
-rw-r--r--app/models/project.rb6
-rw-r--r--app/models/user.rb5
2 files changed, 10 insertions, 1 deletions
diff --git a/app/models/project.rb b/app/models/project.rb
index 6b8e54d5b22..b5dc2490359 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -317,7 +317,7 @@ class Project < ActiveRecord::Base
mrs = self.merge_requests.opened.by_branch(branch_name).all
# Update code for merge requests between project and project fork
mrs += self.fork_merge_requests.opened.by_branch(branch_name).all
-
+
mrs.each { |merge_request| merge_request.reload_code; merge_request.mark_as_unchecked }
# Close merge requests
@@ -447,4 +447,8 @@ class Project < ActiveRecord::Base
order('id DESC').limit(100).
update_all(updated_at: Time.now)
end
+
+ def project_member(user)
+ users_projects.where(user_id: user).first
+ end
end
diff --git a/app/models/user.rb b/app/models/user.rb
index 52d6aa38e2e..ce8c88ca69e 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -395,4 +395,9 @@ class User < ActiveRecord::Base
self
end
+
+ def can_leave_project?(project)
+ project.namespace != namespace &&
+ project.project_member(self)
+ end
end