From a992181cec4d409ebf4d533bade5c29df47d5db8 Mon Sep 17 00:00:00 2001 From: Christoph Haas Date: Mon, 16 May 2016 23:45:05 +0200 Subject: [PATCH] Added approval pending screenshots to moderation view --- app/controllers/moderate_controller.rb | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/app/controllers/moderate_controller.rb b/app/controllers/moderate_controller.rb index db619a7..72e429a 100644 --- a/app/controllers/moderate_controller.rb +++ b/app/controllers/moderate_controller.rb @@ -5,20 +5,30 @@ class ModerateController < ApplicationController def index # List of screenshots to be moderated @pending_screenshots = Screenshot.where(approved: false) - # List of packages with pending screenshots - @pending_packages = Package.joins(:screenshots).where('screenshots.approved=false').distinct(:name) + # First package with pending screenshots + @pending_package = Package.joins(:screenshots).where('screenshots.approved=false').distinct(:name).first + + # List of screenshots that were reported (to be removed) + @reported_screenshots = Screenshot.where(markedfordelete: true) + # First package with reported screenshots + @reported_package = Package.joins(:screenshots).where('screenshots.markedfordelete=true').distinct(:name).first + # The next package that has pending screenshots… - @package = @pending_packages.first - # Number of screenshots that were already moderated (during this session) - session[:already_moderated] ||= 0 - @moderated_screenshots = session[:already_moderated] - # Percentage of already moderated screenshots - @percent_moderated = 100 * (@moderated_screenshots+1) / (@moderated_screenshots + @pending_screenshots.count) + @package = @pending_package or @reported_package + + if @package + # Number of screenshots that were already moderated (during this session) + session[:already_moderated] ||= 0 + @moderated_screenshots = session[:already_moderated] + # Percentage of already moderated screenshots + @percent_moderated = 100 * (@moderated_screenshots+1) / (@moderated_screenshots + @pending_screenshots.count + @reported_screenshots.count) + end end # Publish a screenshot from the moderation queue def approve_screenshot @screenshot = Screenshot.find(params[:id]) + # TODO: Move code to model @screenshot.delete_reason = nil @screenshot.markedfordelete = false @screenshot.approved = true