lib/permissive/permission_definition.rb in permissive-0.2.0.alpha vs lib/permissive/permission_definition.rb in permissive-0.2.1.alpha

- old
+ new

@@ -38,16 +38,18 @@ :global end.to_s.gsub('/', '_').to_sym end end - def can(name, value = nil) - if value - to(name, value) + def can(*args) + # if value + # to(name, value) + # end + args.each do |name| + name = name.to_s.downcase.to_sym + roles[@role].push(name) unless roles[@role].include?(name) end - name = name.to_s.downcase.to_sym - roles[@role].push(name) unless roles[@role].include?(name) end def initialize(model, options = {}) options.assert_valid_keys(:on) @options = options @@ -72,13 +74,15 @@ def permissions @permissions ||= {} end - def role(name, &block) - @role = name.to_s.to_sym - roles[@role] ||= [] - instance_eval(&block) + def role(*names, &block) + names.each do |name| + @role = name.to_s.to_sym + roles[@role] ||= [] + instance_eval(&block) + end unless model.instance_methods.include?('role=') model.class_eval do def role=(role_name) self.permissions = self.class.permissions[:global].roles[role_name.to_s.downcase.to_sym] end \ No newline at end of file