lib/cantango/permits/permit.rb in cantango-0.9.4 vs lib/cantango/permits/permit.rb in cantango-0.9.4.1

- old
+ new

@@ -16,12 +16,28 @@ # strategy is used to control the owns strategy (see rules.rb) attr_reader :ability, :strategy, :disabled delegate :cached?, :options, :subject, :user, :user_account, :to => :ability + def self.inherited(subclass) + register subclass.name.split('::').last.sub(/Permit$/, '').underscore.to_sym, subclass + end + + def self.register permit, subclass + available_permits[permit] = subclass + end + + def self.available_permits + CanTango.config.permits.available_permits + end + # creates the permit def initialize ability @ability = ability + end + + def hash_key + nil end def permit_type self.class.type end