Sha256: a9a9f4d12b50070e5057e60bbde99c4307421993f0c2f74442f67bfc01074860

Contents?: true

Size: 579 Bytes

Versions: 3

Compression:

Stored size: 579 Bytes

Contents

module Smithy
  class ContentBlockTemplate < ActiveRecord::Base
    attr_accessible :content, :name

    belongs_to :content_block, :touch => true
    has_many :page_contents

    validates_presence_of :name
    validates_uniqueness_of :name, :scope => :content_block_id
    validates_presence_of :content

    after_save :touch_page_contents

    default_scope order(:name)

    def liquid_template
      @liquid_template ||= ::Liquid::Template.parse(self.content)
    end

    private
      def touch_page_contents
        self.page_contents.each(&:touch)
      end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
smithycms-0.0.3 app/models/smithy/content_block_template.rb
smithycms-0.0.2 app/models/smithy/content_block_template.rb
smithycms-0.0.1 app/models/smithy/content_block_template.rb