From 19e51445fde39f8e2154aff91b8aacf7baa2a24f Mon Sep 17 00:00:00 2001 From: Christoph Haas Date: Mon, 27 Apr 2015 00:21:08 +0200 Subject: [PATCH] Showing information about failure or success of image uploads --- app/controllers/packages_controller.rb | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/app/controllers/packages_controller.rb b/app/controllers/packages_controller.rb index 9a92e6e..7840f0d 100644 --- a/app/controllers/packages_controller.rb +++ b/app/controllers/packages_controller.rb @@ -26,22 +26,27 @@ class PackagesController < ApplicationController def upload_image @package = Package.find_by(name: params[:name]) + + successful_upload_count = 0 + params[:screenshot][:image].each do |img| new_screenshot = @package.screenshots.new(image: img) # Check if the image is already present by checking its checksum. - if @package.screenshots.find_by(image_fingerprint: new_screenshot.image_fingerprint) + # if @package.screenshots.find_by(image_fingerprint: new_screenshot.image_fingerprint) # logger.error "Uploaded image exists already for package #{@package.name}. Rejecting." - flash['alert'] = "Sorry - you uploaded a duplicate screenshot. I am ignoring it." - else - new_screenshot.save - end - + # flash['alert'] = "Sorry - you uploaded a duplicate screenshot. I am ignoring it." # Check if the image was valid unless new_screenshot.valid? - flash['alert'] = "Sorry - you uploaded an invalid file. Was it really a PNG?" + errors = new_screenshot.errors[:image].join(' and ') + flash['alert'] = "Sorry - the image #{errors}" else new_screenshot.save + successful_upload_count += 1 + end + + if successful_upload_count > 0 + flash['info'] = "#{successful_upload_count} #{'screenshot'.pluralize(successful_upload_count)} uploaded successfully." end # TODO: add logging