Sha256: bd07c0d68b2168aff81072141274b88ab2c082292ed2fd2692ed979aa63cc356

Contents?: true

Size: 1.04 KB

Versions: 26

Compression:

Stored size: 1.04 KB

Contents

module Locomotive
  class ContentAsset

    include Locomotive::Mongoid::Document

    ## extensions ##
    include Concerns::Asset::Types
    include Concerns::Asset::Vignette
    include Concerns::Asset::Checksum

    ## fields ##
    field :content_type,  type: String
    field :width,         type: Integer
    field :height,        type: Integer
    field :size,          type: Integer
    field :position,      type: Integer, default: 0

    ## associations ##
    belongs_to :site, class_name: 'Locomotive::Site', validate: false, autosave: false

    ## validations ##
    validates_presence_of :source

    ## behaviours ##
    mount_uploader :source, ContentAssetUploader, mount_on: :source_filename

    ## scopes ##
    scope :ordered, -> { order_by(created_at: :desc) }
    scope :by_filename, ->(query) { where(source_filename: /.*#{query}.*/i) }

    ## methods ##

    alias :name :source_filename

    def extname
      return nil unless self.source? && self.source_filename
      File.extname(self.source_filename).gsub(/^\./, '')
    end

  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
locomotivecms-3.4.1 app/models/locomotive/content_asset.rb
locomotivecms-3.4.0 app/models/locomotive/content_asset.rb
locomotivecms-3.3.0 app/models/locomotive/content_asset.rb
locomotivecms-3.3.0.rc3 app/models/locomotive/content_asset.rb
locomotivecms-3.3.0.rc2 app/models/locomotive/content_asset.rb
locomotivecms-3.1.2 app/models/locomotive/content_asset.rb
locomotivecms-3.2.1 app/models/locomotive/content_asset.rb
locomotivecms-3.3.0.rc1 app/models/locomotive/content_asset.rb
locomotivecms-3.2.0 app/models/locomotive/content_asset.rb
locomotivecms-3.2.0.rc2 app/models/locomotive/content_asset.rb
locomotivecms-3.2.0.rc1 app/models/locomotive/content_asset.rb
locomotivecms-3.1.1 app/models/locomotive/content_asset.rb
locomotivecms-3.1.0 app/models/locomotive/content_asset.rb
locomotivecms-3.1.0.rc3 app/models/locomotive/content_asset.rb
locomotivecms-3.1.0.rc2 app/models/locomotive/content_asset.rb
locomotivecms-3.1.0.rc1 app/models/locomotive/content_asset.rb
locomotivecms-3.0.1 app/models/locomotive/content_asset.rb
locomotivecms-3.0.0 app/models/locomotive/content_asset.rb
locomotivecms-3.0.0.rc7 app/models/locomotive/content_asset.rb
locomotivecms-3.0.0.rc6 app/models/locomotive/content_asset.rb