module EffectiveAssets

Constants

AWS_PRIVATE
AWS_PUBLIC
IFRAME_UPLOADS
VERSION

Public Class Methods

authorized?(controller, action, resource) click to toggle source
# File lib/effective_assets.rb, line 41
def self.authorized?(controller, action, resource)
  if authorization_method.respond_to?(:call) || authorization_method.kind_of?(Symbol)
    raise Effective::AccessDenied.new() unless (controller || self).instance_exec(controller, action, resource, &authorization_method)
  end
  true
end
permitted_params() click to toggle source
# File lib/effective_assets.rb, line 37
def self.permitted_params
  {:attachments_attributes => [:id, :asset_id, :attachable_type, :attachable_id, :position, :box, :_destroy]}
end
setup() { |self| ... } click to toggle source
# File lib/effective_assets.rb, line 31
def self.setup
  yield self

  configure_carrierwave
end

Private Class Methods

configure_carrierwave() click to toggle source
# File lib/effective_assets.rb, line 50
def self.configure_carrierwave
  if (@carrierwave_configured != true) && EffectiveAssets.uploader.present? && EffectiveAssets.aws_bucket.present?
    CarrierWave.configure do |config|
      config.storage        = :aws
      config.aws_bucket     = EffectiveAssets.aws_bucket
      config.aws_acl        = EffectiveAssets.aws_acl.presence || EffectiveAssets::AWS_PUBLIC
      config.cache_dir      = "#{Rails.root}/tmp/uploads" # For heroku

      config.aws_credentials = {
        :access_key_id      => EffectiveAssets.aws_access_key_id,
        :secret_access_key  => EffectiveAssets.aws_secret_access_key,
        :region             => EffectiveAssets.aws_region.presence || 'us-east-1'
      }

      config.aws_attributes = {
        :cache_control => 'max-age=315576000',
        :expires => 1.year.from_now.httpdate
      }

    end

    @carrierwave_configured = true
  end
end