| 
									
										
										
										
											2012-05-16 03:07:11 +00:00
										 |  |  | class Admin::AssetsController < OrbitBackendController | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |    | 
					
						
							| 
									
										
										
										
											2011-04-13 10:19:51 +00:00
										 |  |  |   def index | 
					
						
							| 
									
										
										
										
											2012-05-16 03:07:11 +00:00
										 |  |  |     @assets = (params[:sort] || @filter) ? get_sorted_and_filtered("asset") : Asset.all.page(params[:page]).per(10) | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							| 
									
										
										
										
											2011-04-13 10:19:51 +00:00
										 |  |  |   def show | 
					
						
							|  |  |  |   #TODO | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def new | 
					
						
							|  |  |  |     @asset = Asset.new | 
					
						
							| 
									
										
										
										
											2012-05-16 03:07:11 +00:00
										 |  |  |     @asset_categories = AssetCategory.all | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |     @tags = AssetTag.all | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |     respond_to do |format| | 
					
						
							|  |  |  |       format.html {} | 
					
						
							|  |  |  |       format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/new'} } | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def edit | 
					
						
							|  |  |  |     @asset = Asset.find(params[:id]) | 
					
						
							| 
									
										
										
										
											2012-05-16 03:07:11 +00:00
										 |  |  |     @asset_categories = AssetCategory.all | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |     @tags = AssetTag.all | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |     respond_to do |format| | 
					
						
							|  |  |  |       format.html {} | 
					
						
							|  |  |  |       format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/edit'} } | 
					
						
							|  |  |  |     end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def create   | 
					
						
							|  |  |  |     @asset = Asset.new(params[:asset]) | 
					
						
							| 
									
										
										
										
											2012-05-17 10:31:40 +00:00
										 |  |  |     @asset.filename = @asset.title[I18n.locale] rescue nil | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |     if @asset.filename && @asset.save | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       respond_to do |format| | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |         format.js { | 
					
						
							|  |  |  |           if params[:uploader] | 
					
						
							|  |  |  |             render 'create' | 
					
						
							|  |  |  |           else | 
					
						
							|  |  |  |             render 'js/remove_pop_up_and_reload_content', :locals => {:function => 'replaceWith', :id => "asset_#{@asset.id}", :value => @asset, :values => nil, :partial => 'admin/assets/asset', :locals => nil} | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |     else | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |       flash[:error] = t(:create_fail) | 
					
						
							|  |  |  |       @asset_categories = AssetCategory.all | 
					
						
							|  |  |  |       @tags = AssetTag.all | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       respond_to do |format| | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |         format.js {  | 
					
						
							|  |  |  |           if params[:uploader] | 
					
						
							|  |  |  |             render 'file_upload' | 
					
						
							|  |  |  |           else | 
					
						
							|  |  |  |             render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/new', :locals => {:is_html => false}}  | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   def update | 
					
						
							|  |  |  |     @asset = Asset.find(params[:id]) | 
					
						
							|  |  |  |     if @asset.update_attributes(params[:asset]) | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       respond_to do |format| | 
					
						
							|  |  |  |         format.html { redirect_to admin_assets_url } | 
					
						
							|  |  |  |         format.js { render 'js/remove_pop_up_and_reload_content', :locals => {:function => 'replaceWith', :id => "asset_#{@asset.id}", :value => @asset, :values => nil, :partial => 'admin/assets/asset', :locals => nil} } | 
					
						
							|  |  |  |       end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |     else | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  |       flash[:error] = t(:update_fail) | 
					
						
							|  |  |  |       @asset_categories = AssetCategory.all | 
					
						
							|  |  |  |       @tags = AssetTag.all | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       respond_to do |format| | 
					
						
							|  |  |  |         format.html { render :action => :edit } | 
					
						
							| 
									
										
										
										
											2011-12-29 06:09:06 +00:00
										 |  |  |         format.js { render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/edit', :locals => {:is_html => false}} } | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |       end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |     end | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |   def destroy | 
					
						
							|  |  |  |     @asset = Asset.find(params[:id]) | 
					
						
							|  |  |  |     @asset.destroy | 
					
						
							| 
									
										
										
										
											2011-12-28 12:49:53 +00:00
										 |  |  |     respond_to do |format| | 
					
						
							|  |  |  |       format.js { render 'js/remove_element', :locals => {:id => "asset_#{@asset.id}"} } | 
					
						
							|  |  |  |     end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |   end | 
					
						
							| 
									
										
										
										
											2012-05-16 03:07:11 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   def delete | 
					
						
							|  |  |  |     if params[:to_delete] | 
					
						
							|  |  |  |       asset = Asset.any_in(:_id => params[:to_delete]).delete_all | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |     redirect_to assets_url(:filter => params[:filter], :direction => params[:direction], :sort => params[:sort], :sort_options => params[:sort_options]) | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2012-05-16 22:28:29 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   def file_upload | 
					
						
							|  |  |  |     @asset = Asset.new | 
					
						
							|  |  |  |     @asset_categories = AssetCategory.all | 
					
						
							|  |  |  |     @tags = AssetTag.all | 
					
						
							|  |  |  |     render :layout => false | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   def file_select | 
					
						
							|  |  |  |     @assets = Asset.all | 
					
						
							|  |  |  |     render :layout => false | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2010-02-01 09:24:28 +00:00
										 |  |  |    | 
					
						
							|  |  |  | end |