Module: Uploader::Asset

Defined in:
lib/uploader/asset.rb

Instance Method Summary collapse

Instance Method Details

#uploader_create(params, request = nil) ⇒ Object

Save asset Usage:

class Asset < ActiveRecord::Base
  include Uploader::Asset

  def uploader_create(params, request = nil)
    self.user = request.env['warden'].user
    super
  end
end


15
16
17
18
19
20
21
22
23
24
25
# File 'lib/uploader/asset.rb', line 15

def uploader_create(params, request = nil)
  self.guid = params[:guid]
  self.assetable_type = params[:assetable_type]
  if self.class.respond_to?(:collection) && !params[:assetable_id].blank?
    self.assetable_id = Moped::BSON::ObjectId.from_string(params[:assetable_id])
  else
    self.assetable_id = params[:assetable_id]
  end

  save
end

#uploader_destroy(params, request) ⇒ Object

Destroy asset Usage (cancan example):

class Asset < ActiveRecord::Base
  include Uploader::Asset

  def uploader_destroy(params, request = nil)
    ability = Ability.new(request.env['warden'].user)
    if ability.can? :delete, self
      super
    else
      errors.add(:id, :access_denied)
    end
  end
end


43
44
45
# File 'lib/uploader/asset.rb', line 43

def uploader_destroy(params, request)
  destroy
end