Sha256: f7e7907fa8b48bc11cbffa4fe399f87d8f355e91a2049073c5277c3fe4c77e7e

Contents?: true

Size: 737 Bytes

Versions: 4

Compression:

Stored size: 737 Bytes

Contents

# encoding: utf-8

class ThemeAssetUploader < AssetUploader

  process :set_content_type
  process :set_size
  process :set_width_and_height

  def store_dir
    File.join('sites', (model.site_id_was || model.site_id).to_s, 'theme', model.folder_was || model.folder)
  end

  def stale_model?
    !model.new_record? && model.folder_changed?
  end

  def extension_white_list
    %w(jpg jpeg gif png css js swf flv eot svg ttf woff otf ico)
  end

  def self.url_for(site, path)
    build(site, path).url
  end

  def self.build(site, path)
    asset = ThemeAsset.new(:site => site, :folder => File.dirname(path))
    uploader = ThemeAssetUploader.new(asset)
    uploader.retrieve_from_store!(File.basename(path))
    uploader
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
locomotive_cms-1.0.0.beta.2 app/uploaders/theme_asset_uploader.rb
locomotive_cms-1.0.0.beta app/uploaders/theme_asset_uploader.rb
locomotive_cms-0.0.4.beta12 app/uploaders/theme_asset_uploader.rb
locomotive_cms-0.0.4.beta11 app/uploaders/theme_asset_uploader.rb