Module: Zena::Acts::SecureNode
- Included in:
- Node
- Defined in:
- lib/zena/acts/secure_node.rb
Defined Under Namespace
Modules: ClassMethods, InstanceMethods
Instance Method Summary collapse
-
#acts_as_secure_node ⇒ Object
this is called when the module is extended into the Node class.
Instance Method Details
#acts_as_secure_node ⇒ Object
this is called when the module is extended into the Node class
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/zena/acts/secure_node.rb', line 6 def acts_as_secure_node belongs_to :rgroup, :class_name=>'Group', :foreign_key=>'rgroup_id' belongs_to :wgroup, :class_name=>'Group', :foreign_key=>'wgroup_id' belongs_to :dgroup, :class_name=>'Group', :foreign_key=>'dgroup_id' belongs_to :user before_validation :secure_reference_before_validation # we move all before_validation on update and create here so that it is triggered before multiversion's before_validation before_validation :secure_before_validation validate :record_must_be_secured #validate {|r| r.errors.add(:base, 'record not secured') unless r.instance_variable_get(:@visitor)} validate_on_update {|r| r.errors.add('site_id', 'cannot change') if r.site_id_changed? } validate_on_create :secure_on_create validate_on_update :secure_on_update before_save :secure_before_save after_save :secure_after_save before_destroy :secure_on_destroy include Zena::Acts::SecureNode::InstanceMethods extend Zena::Acts::SecureNode::ClassMethods end |