summaryrefslogtreecommitdiff
path: root/app/models/ability.rb
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-05-28 19:03:01 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-05-28 19:03:01 +0300
commitaea79b80351109506bd089694df6f22785456f68 (patch)
tree718562db005ea8bca25d8933c7ad4af85b8917f1 /app/models/ability.rb
parentaca6be50d3dc1963491c9dcff61dac3b3ec937ca (diff)
downloadgitlab-ce-aea79b80351109506bd089694df6f22785456f68.tar.gz
Add ability rule for creating project in namespace
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/models/ability.rb')
-rw-r--r--app/models/ability.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/app/models/ability.rb b/app/models/ability.rb
index 1afe8a4638f..70c26caded8 100644
--- a/app/models/ability.rb
+++ b/app/models/ability.rb
@@ -188,6 +188,13 @@ class Ability
rules << :read_group
end
+ # Only group masters and group owners can create new projects in group
+ if group.has_master?(user) || group.has_owner?(user) || user.admin?
+ rules += [
+ :create_projects,
+ ]
+ end
+
# Only group owner and administrators can manage group
if group.has_owner?(user) || user.admin?
rules += [
@@ -205,6 +212,7 @@ class Ability
# Only namespace owner and administrators can manage it
if namespace.owner == user || user.admin?
rules += [
+ :create_projects,
:manage_namespace
]
end