lib/proxes/policies/request_policy.rb in proxes-0.8.2 vs lib/proxes/policies/request_policy.rb in proxes-0.8.3

- old
+ new

@@ -7,20 +7,21 @@ module ProxES class RequestPolicy include Helpers::Indices attr_reader :user, :record + alias request record def initialize(user, record) @user = user @record = record end def method_missing(method_sym, *arguments, &block) return super if method_sym.to_s[-1] != '?' - return true if record.indices? && index_allowed? + return false if request.indices? && !index_allowed? action_allowed? method_sym[0..-2].upcase end def respond_to_missing?(name, _include_private = false) name[-1] == '?' @@ -28,17 +29,17 @@ def index_allowed? patterns = patterns_for('INDEX').map do |permission| permission.pattern.gsub(/\{user.(.*)\}/) { |_match| user.send(Regexp.last_match[1].to_sym) } end - filter(record.index, patterns).count > 0 + filter(request.index, patterns).count > 0 end def action_allowed?(action) # Give me all the user's permissions that match the verb patterns_for(action).each do |permission| - return true if record.path =~ /#{permission.pattern}/ + return true if request.path =~ /#{permission.pattern}/ end false end def patterns_for(action) @@ -52,9 +53,10 @@ class Scope include Helpers::Indices attr_reader :user, :scope + alias request scope def initialize(user, scope) @user = user @scope = scope end