Sha256: 3f9cec5ecf2e8cd5cd6a5449bb71e9f8fa75e112434f20682384063ce8d4dc39

Contents?: true

Size: 726 Bytes

Versions: 10

Compression:

Stored size: 726 Bytes

Contents

class ProtectedMediaController < Spud::ApplicationController

  before_filter :require_user

  def show
    @media = SpudMedia.where(:id => params[:id]).first
    if @media.blank?
      raise Spud::NotFoundError.new(:item => 'media')
    else
      if Spud::Media.config.paperclip_storage == :s3
        secure_url = @media.attachment.s3_object(params[:style]).url_for(:read, :secure => true, :expires => 10.minutes)
        redirect_to(secure_url.to_s)
      else
        filepath = @media.attachment.path(params[:style])
        if !File.exists?(filepath)
          raise Spud::NotFoundError.new(:item => 'media')
        else
          send_file(filepath, :disposition => 'inline')
        end
      end
    end
  end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
tb_media-1.2.2 app/controllers/protected_media_controller.rb
tb_media-1.2.1 app/controllers/protected_media_controller.rb
tb_media-1.2.0 app/controllers/protected_media_controller.rb
tb_media-1.2.0.beta1 app/controllers/protected_media_controller.rb
tb_media-1.0.8 app/controllers/protected_media_controller.rb
tb_media-1.0.6 app/controllers/protected_media_controller.rb
tb_media-1.0.5 app/controllers/protected_media_controller.rb
tb_media-1.0.4 app/controllers/protected_media_controller.rb
tb_media-1.0.3 app/controllers/protected_media_controller.rb
tb_media-1.0.2 app/controllers/protected_media_controller.rb