From 756d61562bb8c1a2ebcb29eb0f62548d2338db52 Mon Sep 17 00:00:00 2001 From: Douwe Maan Date: Tue, 17 Nov 2015 16:24:02 +0100 Subject: [PATCH] Minor refactoring --- app/models/ability.rb | 22 ++++++++++++++-------- 1 file 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