Sha256: a7e2806507091092efee18d749dff2d85a21620283cc117e803e019278c63dc1

Contents?: true

Size: 886 Bytes

Versions: 38

Compression:

Stored size: 886 Bytes

Contents

module Spotlight
  ##
  # Feature pages
  class FeaturePage < Spotlight::Page
    extend FriendlyId
    friendly_id :title, use: [:slugged, :scoped, :finders, :history], scope: :exhibit

    has_many :child_pages, class_name: 'Spotlight::FeaturePage', inverse_of: :parent_page, foreign_key: 'parent_page_id'
    belongs_to :parent_page, class_name: 'Spotlight::FeaturePage'

    accepts_nested_attributes_for :child_pages

    belongs_to :thumbnail, class_name: 'Spotlight::FeaturedImage', dependent: :destroy
    accepts_nested_attributes_for :thumbnail, update_only: true

    before_validation unless: :top_level_page? do
      self.exhibit = top_level_page_or_self.exhibit
    end

    def display_sidebar?
      child_pages.published.present? || display_sidebar
    end

    def thumbnail_image_url
      thumbnail.image.thumb.url if thumbnail && thumbnail.image
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
blacklight-spotlight-0.24.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.23.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.22.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.21.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.20.3 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.20.2 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.20.1 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.20.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.19.2 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.19.1 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.19.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.18.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.17.1 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.17.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.16.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.15.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.14.2 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.14.1 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.14.0 app/models/spotlight/feature_page.rb
blacklight-spotlight-0.13.0 app/models/spotlight/feature_page.rb