summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-11-17 16:24:02 +0100
committerDouwe Maan <douwe@gitlab.com>2015-11-17 16:24:02 +0100
commit756d61562bb8c1a2ebcb29eb0f62548d2338db52 (patch)
tree43a3fc6e2d82b0ce15c43a0efaa59499c779376e
parent16438ad205bbd953ae7fd5c290e05b60618ce7f4 (diff)
downloadgitlab-ce-756d61562bb8c1a2ebcb29eb0f62548d2338db52.tar.gz
Minor refactoring
-rw-r--r--app/models/ability.rb22
1 files changed, 14 insertions, 8 deletions
diff --git a/app/models/ability.rb b/app/models/ability.rb
index 95dd53bf425..f5cd14a89c0 100644
--- a/app/models/ability.rb
+++ b/app/models/ability.rb
@@ -2,7 +2,7 @@ class Ability
class << self
def allowed(user, subject)
return not_auth_abilities(user, subject) if user.nil?
- return [] unless user.kind_of?(User)
+ return [] unless user.is_a?(User)
return [] if user.blocked?
case subject.class.name
@@ -22,14 +22,20 @@ class Ability
# List of possible abilities
# for non-authenticated user
def not_auth_abilities(user, subject)
- return not_auth_personal_snippet_abilities(subject) if subject.kind_of?(PersonalSnippet)
- return not_auth_project_abilities(subject) if subject.kind_of?(Project) || subject.respond_to?(:project)
- return not_auth_group_abilities(subject) if subject.kind_of?(Group) || subject.respond_to?(:group)
- []
+ case true
+ when subject.is_a?(PersonalSnippet)
+ not_auth_personal_snippet_abilities(subject)
+ when subject.is_a?(Project) || subject.respond_to?(:project)
+ not_auth_project_abilities(subject)
+ when subject.is_a?(Group) || subject.respond_to?(:group)
+ not_auth_group_abilities(subject)
+ else
+ []
+ end
end
def not_auth_project_abilities(subject)
- project = if subject.kind_of?(Project)
+ project = if subject.is_a?(Project)
subject
else
subject.project
@@ -57,7 +63,7 @@ class Ability
end
def not_auth_group_abilities(subject)
- group = if subject.kind_of?(Group)
+ group = if subject.is_a?(Group)
subject
else
subject.group
@@ -327,7 +333,7 @@ class Ability
end
if snippet.public? || snippet.internal?
- rules.push(:read_personal_snippet)
+ rules << :read_personal_snippet
end
rules