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