engine/app/models/page_part.rb

36 lines
686 B
Ruby
Raw Normal View History

2010-04-25 00:33:38 +00:00
class PagePart
2010-04-25 00:33:38 +00:00
include Mongoid::Document
## fields ##
field :name
field :slug
field :value
2010-04-25 00:33:38 +00:00
field :disabled, :type => Boolean, :default => false
field :value
2010-04-25 00:33:38 +00:00
## associations ##
embedded_in :page, :inverse_of => :parts
2010-04-25 00:33:38 +00:00
## validations ##
validates_presence_of :name, :slug
## named scopes ##
2010-08-01 06:01:38 +00:00
scope :enabled, where(:disabled => false)
## methods ##
def template
"{% capture content_for_#{self.slug} %}#{self.value}{% endcapture %}"
end
def self.build_body_part
self.new({
:name => I18n.t('attributes.defaults.page_parts.name'),
:value => I18n.t('attributes.defaults.pages.other.body'),
:slug => 'layout'
})
end
end