Sha256: 2bd58ab6d402cd7d9049e5840afa83f980ea1c58ffdbff692be58f029bd78e28

Contents?: true

Size: 669 Bytes

Versions: 14

Compression:

Stored size: 669 Bytes

Contents

module Locomotive
  class Snippet

    include Locomotive::Mongoid::Document
    include Concerns::Shared::SiteScope
    include Concerns::Shared::Slug

    ## fields ##
    field :name
    field :slug
    field :template, localize: true

    ## validations ##
    validates_presence_of   :name, :slug, :template
    validates_uniqueness_of :slug, scope: :site_id

    ## named scopes ##
    scope :by_id_or_slug, ->(id_or_slug) { all.or({ _id: id_or_slug }, { slug: id_or_slug }) }

    ## behaviours ##
    slugify_from :name

    ## indexes ##
    index site_id: 1, slug: 1

    ## methods ##

    def touch_site_attribute
      :template_version
    end

  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
locomotivecms-4.1.1 app/models/locomotive/snippet.rb
locomotivecms-4.1.0 app/models/locomotive/snippet.rb
locomotivecms-4.1.0.rc1 app/models/locomotive/snippet.rb
locomotivecms-4.0.3 app/models/locomotive/snippet.rb
locomotivecms-4.0.2 app/models/locomotive/snippet.rb
locomotivecms-4.0.1 app/models/locomotive/snippet.rb
locomotivecms-4.0.0 app/models/locomotive/snippet.rb
locomotivecms-4.0.0.rc0 app/models/locomotive/snippet.rb
locomotivecms-4.0.0.alpha3 app/models/locomotive/snippet.rb
locomotivecms-3.4.1 app/models/locomotive/snippet.rb
locomotivecms-4.0.0.alpha2 app/models/locomotive/snippet.rb
locomotivecms-4.0.0.alpha1 app/models/locomotive/snippet.rb
locomotivecms-3.4.0 app/models/locomotive/snippet.rb
locomotivecms-3.3.0 app/models/locomotive/snippet.rb