Sha256: 194fab7aafd028a86f1d9f2031aaafabeb139150cebb53832716857402c7f6db

Contents?: true

Size: 823 Bytes

Versions: 7

Compression:

Stored size: 823 Bytes

Contents

module Ecm::Videos
  class Video < ActiveRecord::Base
    # markup support
    include Models::MarkupConcern
    markup :description

    # acts as published
    include ActsAsPublished::ActiveRecord
    acts_as_published

    # acts as list
    acts_as_list scope: :category
    default_scope { order(position: :asc) }

    belongs_to :category

    has_attached_file :clip, Configuration.paperclip_options.call(self)

    validates :clip, attachment_presence: true
    validates_attachment_content_type :clip, content_type: /\Avideo\/.*\Z/
    validates :category, :name, :markup_language, presence: true

    after_initialize :set_defaults, if: :new_record?

    def preview_image
      clip
    end

    private

    def set_defaults
      self.markup_language = Configuration.default_markup_language
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ecm_videos-2.1.1 app/models/ecm/videos/video.rb
ecm_videos-2.1.0 app/models/ecm/videos/video.rb
ecm_videos-2.0.0 app/models/ecm/videos/video.rb
ecm_videos-1.0.4 app/models/ecm/videos/video.rb
ecm_videos-1.0.3 app/models/ecm/videos/video.rb
ecm_videos-1.0.2 app/models/ecm/videos/video.rb
ecm_videos-1.0.1 app/models/ecm/videos/video.rb