Sha256: f5a2ed0da2e612ecbae3601aa39d3812b2d6d00f5f2ed35cf5f785913d4cbdcb

Contents?: true

Size: 1.16 KB

Versions: 1

Compression:

Stored size: 1.16 KB

Contents

class Ckeditor::Asset < ActiveRecord::Base

  include Georgia::Indexer::Adapter

  # to allow media_path in to_jq_upload
  include Georgia::Engine.routes.url_helpers

  include Ckeditor::Orm::ActiveRecord::AssetBase
  include Georgia::Concerns::Taggable

  delegate :url, :current_path, :content_type, to: :data

  mount_uploader :data, Ckeditor::AttachmentFileUploader, mount_on: :data_file_name

  validates :data, presence: true
  attr_accessible :data

  paginates_per 15

  scope :latest, order('created_at DESC')

  def to_jq_upload
    {
      "name" => read_attribute(:data),
      "size" => data.size,
      "url" => data.url,
      "delete_url" => media_path(id: id),
      "delete_type" => "DELETE"
    }
  end

  def short_name
    @short_name ||= self.data.file.filename.dup.gsub(/(.*)\.#{extension}/, '\1') if data.file and data.file.filename
  end

  def extension
    self.data_content_type ||= self.data.file.content_type
    @extension ||= data_content_type.gsub(/.*\/(.*)/, '\1')
  end

  SIZE_RANGE = {
    '< 25 KB' => 0..25,
    '25 KB to 100 KB' => 25..100,
    '100 KB to 500 KB' => 100..500,
    '500 KB to 1 MB' => 500..1000,
    '> 1 MB' => 1000..999999
  }

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
georgia-0.7.8 app/models/ckeditor/asset.rb