Sha256: cf84fe1b985380e811a1d0413ab0d326321908e385747306dda4dc0f264b095d
Contents?: true
Size: 1.29 KB
Versions: 17
Compression:
Stored size: 1.29 KB
Contents
module KirguduBase module DynamicPages class Element include ActiveModel::Validations include ::KirguduBase::Models::MergeableElements::InstanceMethods extend ::KirguduBase::Models::MergeableElements::ClassMethods include ::KirguduBase::Models::FixableElements::InstanceMethods extend ::KirguduBase::Models::FixableElements::ClassMethods def initialize(options = {}) if options options.symbolize_keys! options.each_pair do |key, value| self.send("#{key}=", value) end end end attr_reader :parent_entry def fix_parent_entry(parent_entry) if parent_entry unless parent_entry.is_a?(::KirguduBase::DynamicPages::Element) raise "Parent Entry must be a derivative of class ::KirguduBase::Pages::Element" end self.parent_entry = parent_entry end end def to_external_hash(options = {}) options ||= {} options end def kontroller_klass self.parent_entry.kontroller_klass if self.parent_entry && self.parent_entry.respond_to?(:kontroller_klass) end def as_json(options = {}) super((options || {}).merge({ :except => [:parent_entry, :validation_context, :errors] })) end protected attr_writer :parent_entry end end end
Version data entries
17 entries across 17 versions & 1 rubygems