app/controllers/papermill_controller.rb in papermill-1.1.6 vs app/controllers/papermill_controller.rb in papermill-1.2.0

- old
+ new

@@ -1,14 +1,14 @@ class PapermillController < ApplicationController - prepend_before_filter :load_asset, :only => [ "show", "destroy", "update", "edit", "crop" ] - prepend_before_filter :load_assets, :only => [ "sort", "mass_delete", "mass_edit" ] + prepend_before_filter :load_asset, :only => [ "show", "destroy", "update", "edit", "crop" ] + prepend_before_filter :load_assets, :only => [ "sort", "mass_delete", "mass_edit", "mass_thumbnail_reset" ] def show - if @asset.create_thumb_file(params[:style]) + if @asset.has_valid_url_key?(params[:url_key], params[:style]) && @asset.create_thumb_file(params[:style]) redirect_to @asset.url(params[:style]) else - render :nothing => true, :status => 500 + render :nothing => true, :status => 404 end end def create @asset = params[:asset_class].constantize.new(params.reject{|k, v| !(PapermillAsset.columns.map(&:name)+["Filedata", "Filename"]).include?(k)}) @@ -27,10 +27,14 @@ def crop render :action => "crop", :layout => false end def update + if params[:target] + @asset.create_thumb_file(params[:target], params[:papermill_asset].merge({ :geometry => "original#" })) + end + render :update do |page| if @asset.update_attributes(params[:papermill_asset]) page << %{ notify("#{@asset.name}", "#{ escape_javascript t("papermill.updated", :resource => @asset.name)}", "notice"); close_popup(self); } else page << %{ jQuery("#error").html("#{ escape_javascript @asset.errors.full_messages.join('<br />') }"); jQuery("#error").show(); } @@ -60,9 +64,16 @@ end end def mass_edit @assets.each { |asset| asset.update_attribute(params[:attribute], params[:value]) } + render :update do |page| + page << %{ notify("", "#{ escape_javascript t("papermill.updated", :resource => @assets.map(&:name).to_sentence) }", "notice"); } unless @assets.blank? + end + end + + def mass_thumbnail_reset + @assets.each &:destroy_thumbnails render :update do |page| page << %{ notify("", "#{ escape_javascript t("papermill.updated", :resource => @assets.map(&:name).to_sentence) }", "notice"); } unless @assets.blank? end end \ No newline at end of file