class Admin::ImagesController < OrbitAdminController before_filter :setup_vars def crop_process end def batch_crop images = params['image_ids'].split(',') @img = [] images.each do |image| @img << AlbumImage.find(image) end render 'batch_crop' end def edit @image = AlbumImage.find(params[:id]) render 'edit_image' end def show @image = AlbumImage.find(params[:id]) @albumid = @image.album_id @album = Album.find(@albumid) @images = @album.album_images.asc(:order) end def changeorder type = params[:type] if type == "imgholder" album = Album.find(params[:album_id]) rescue nil images = params[:imageids] images.each_with_index.reverse_each do |image, i| img = AlbumImage.find(image) rescue nil if !img.nil? img.order = i img.save end end if album album.update(:min_order=>-1) end elsif type == "orbit_gallery" albums = params[:imageids] albums.each_with_index.reverse_each do |albumid, i| album = Album.find(albumid) rescue nil if !album.nil? album.order = i album.save end end AlbumSetting.update_all(:min_order=>-1) end render :json => {"success" => true}.to_json end def delete_photos images = params['images'] images.each do |image| img = AlbumImage.find(image) img.destroy begin FileUtils.rm_rf(File.dirname(img.file.path)) rescue => e puts ["can't delete",e] end end if params['delete_cover'] == "true" album = Album.find(params['album_id']) album.update_attributes(:cover=>"default",:cover_path => nil) end render :json =>{"success"=>true}.to_json end def image_tagging images = params[:image_ids] tags = params[:tag_ids] || [] i = nil images.each do |image| img = AlbumImage.find(image) img.tags = tags img.save i = img end @album = Album.find(i.album_id.to_s) @images = @album.album_images @image_content = [] @images.each do |image| @image_content << {"id" => image.id.to_s, "description" => image.description_translations,"tags" => image.tags.collect{|t| t.id.to_s}} end render :json=>{"galleries" => @image_content}.to_json end def update_image image = AlbumImage.find(params[:image_id]) image.update_attributes(update_params) image.save! @album = Album.find(image.album_id.to_s) @images = @album.album_images @image_content = [] @images.each do |image| @image_content << {"id" => image.id.to_s, "description" => image.description_translations,"tags" => image.tags.collect{|t| t.id.to_s}} end render :json=>{"galleries" => @image_content}.to_json end private def setup_vars @module_app = ModuleApp.where(:key=>"gallery").first end def update_params params.require(:album_image).permit! end end