Sha256: b0458ec46e1e114fb6ddf0742347d81c842d82284b029a3e2a3e9ea21de0e072

Contents?: true

Size: 596 Bytes

Versions: 1

Compression:

Stored size: 596 Bytes

Contents

module Smithy
  class ContentBlockTemplate < ActiveRecord::Base
    belongs_to :content_block, :touch => true, inverse_of: :templates
    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(Smithy::AssetLink.fix(self.content))
    end

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

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
smithycms-0.8.1 app/models/smithy/content_block_template.rb