Module: Cmtool::Includes::Page
- Included in:
- Page
- Defined in:
- lib/cmtool/includes/page.rb
Defined Under Namespace
Modules: ClassMethods, InstanceMethods
Class Method Summary collapse
Class Method Details
.included(klass) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/cmtool/includes/page.rb', line 4 def self.included(klass) klass.send :include, SimplyStored::Couch klass.send :include, InstanceMethods klass.send :extend, ClassMethods # PROPERTIES klass.property :name klass.property :menu_text klass.property :title klass.property :body klass.property :body_template klass.property :sidebar klass.property :sidebar_template klass.property :footer klass.property :footer_template klass.property :wysiwyg, type: :boolean, default: false klass.property :priority, type: Float, default: 0.5 klass.property :active, type: :boolean, default: true klass.property :layout klass.property :in_menu, type: :boolean, default: true klass.has_ancestry by_property: :locale klass.validates :name, presence: true klass.validates :locale, presence: true klass.validate :parent_locale_match # RELATIONS klass.has_and_belongs_to_many :keywords, storing_keys: true, class_name: 'Cmtool::Keyword' # DEFAULT ORDER klass.view :all_documents, key: [:position, :name, :title] klass.view :by_name_and_locale, key: [:name, :locale] end |