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