module Rolify::Finders

Public Instance Methods

with_all_roles(*args) click to toggle source
# File lib/rolify/finders.rb, line 16
def with_all_roles(*args)
  users = []
  parse_args(args, users) do |users_to_add|
    users = users_to_add if users.empty?
    users &= users_to_add
    return [] if users.empty?
  end
  users
end
with_any_role(*args) click to toggle source
# File lib/rolify/finders.rb, line 26
def with_any_role(*args)
  users = []
  parse_args(args, users) do |users_to_add|
    users += users_to_add
  end
  users.uniq
end
with_role(role_name, resource = nil) click to toggle source
# File lib/rolify/finders.rb, line 3
def with_role(role_name, resource = nil)
  strict = self.strict_rolify && resource && resource != :any
  self.adapter.scope(
    self,
    { :name => role_name, :resource => resource },
    strict
  )
end
without_role(role_name, resource = nil) click to toggle source
# File lib/rolify/finders.rb, line 12
def without_role(role_name, resource = nil)
  self.adapter.all_except(self, self.with_role(role_name, resource))
end