lib/authority/user_abilities.rb in authority-0.9.0 vs lib/authority/user_abilities.rb in authority-1.0.0.pre2
- old
+ new
@@ -1,7 +1,14 @@
module Authority
module UserAbilities
+ # Should be included into whatever class represents users in an app.
+ # Provides methods like `can_update?(resource)`
+ # Exactly which methods get defined is determined from `config.abilities`;
+ # the module is evaluated after any user-supplied config block is run
+ # in order to make that possible.
+ # All delegate to corresponding methods on the resource.
+
Authority.verbs.each do |verb|
class_eval <<-RUBY, __FILE__, __LINE__ + 1
def can_#{verb}?(resource)
resource.#{Authority.abilities[verb]}_by?(self)
end