Sha256: f1184d09fcd0c9a605e54abb5b04b77a27cdc24c4532a03c3cc677110c63fce2

Contents?: true

Size: 1.83 KB

Versions: 8

Compression:

Stored size: 1.83 KB

Contents

class Admin::MediaController < Admin::ApplicationController
	layout 'admin/detail'
	add_breadcrumb "Media", :admin_media_path
	belongs_to_spud_app :media
	before_filter :load_media,:only => [:edit,:update,:show,:destroy,:set_private,:set_access]
	
	def index
		@media = SpudMedia.order("created_at DESC").paginate :page => params[:page]
		respond_with @media
	end

	def new
		@page_name = "New Media"
		add_breadcrumb "New", :new_admin_medium_path
		@media = SpudMedia.new
		respond_with @media
	end

	def create
		@page_name = "New Media"
		add_breadcrumb "New", :new_admin_medium_path
		@media = SpudMedia.new(media_params)
		location = admin_media_path
		if @media.save
			flash[:notice] = "File uploaded successfully" 
			if @media.is_image?
				location = edit_admin_medium_path(@media.id)
			end
		end
		respond_with @media, :location => location
	end

	def edit
		if !@media.is_image?
			flash[:error] = "Unable to edit #{@media.attachment_file_name}"
			redirect_to admin_media_path
		end
	end

	def update
		if @media.update_attributes(media_params)
			@media.attachment.reprocess!
		end
		respond_with @media, :location => admin_media_path
	end

	def destroy
		flash[:notice] = "File successfully destroyed" if @media.destroy
		respond_with @media, :location => admin_media_path
	end

	def set_access
		is_protected = params[:protected] || false
		@media.update_attribute(:is_protected, is_protected)
		respond_with @media, :location => admin_media_path
	end

private
	def load_media
		@media = SpudMedia.where(:id => params[:id]).first
		if @media.blank?
			flash[:error] = "Media Asset not found!"
			redirect_to admin_media_path() and return
		end
		
	end

	def media_params
		params.require(:spud_media).permit(:attachment_content_type,:attachment_file_name,:attachment_file_size,:attachment, :is_protected, :crop_x, :crop_y, :crop_w, :crop_h, :crop_s)
	end

end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
tb_media-1.2.1 app/controllers/admin/media_controller.rb
tb_media-1.2.0 app/controllers/admin/media_controller.rb
tb_media-1.2.0.beta1 app/controllers/admin/media_controller.rb
tb_media-1.0.8 app/controllers/admin/media_controller.rb
tb_media-1.0.6 app/controllers/admin/media_controller.rb
tb_media-1.0.5 app/controllers/admin/media_controller.rb
tb_media-1.0.4 app/controllers/admin/media_controller.rb
tb_media-1.0.3 app/controllers/admin/media_controller.rb