fixes #2650: Add random mode to mod queue

This commit is contained in:
r888888888
2016-09-08 15:52:48 -07:00
parent d1674e4cbb
commit de34c7fca3
9 changed files with 115 additions and 1 deletions

View File

@@ -4,6 +4,7 @@ module Moderator
before_filter :post_approvers_only
def create
cookies[:moderated] = Time.now.to_i
@post = ::Post.find(params[:post_id])
if @post.is_deleted? || @post.is_flagged? || @post.is_pending?
@post.approve!

View File

@@ -4,6 +4,7 @@ module Moderator
before_filter :post_approvers_only
def create
cookies[:moderated] = Time.now.to_i
@post = ::Post.find(params[:post_id])
@post_disapproval = PostDisapproval.create(:post => @post, :user => CurrentUser.user, :reason => params[:reason] || "disinterest", :message => params[:message])
end

View File

@@ -5,6 +5,8 @@ module Moderator
before_filter :post_approvers_only
def show
cookies[:moderated] = Time.now.to_i
if params[:per_page]
cookies.permanent["mq_per_page"] = params[:per_page]
end
@@ -16,8 +18,22 @@ module Moderator
respond_with(@posts)
end
def random
cookies[:moderated] = Time.now.to_i
::Post.without_timeout do
@posts = ::Post.order("posts.id asc").pending_or_flagged.available_for_moderation(false).reorder("random()").limit(5)
@posts.each # hack to force rails to eager load
end
respond_with(@posts)
end
protected
def get_posts
end
def per_page
cookies["mq_per_page"] || params[:per_page] || 25
end

View File

@@ -27,6 +27,12 @@ class PostsController < ApplicationController
end
def show
if CurrentUser.is_janitor? && (cookies[:moderated].blank? || Time.at(cookies[:moderated].to_i) < 1.day.ago)
flash[:notice] = "You haven't moderated any posts recently. Consider checking the queue."
#redirect_to(random_moderator_post_queue_path(:return_to => request.original_url))
#return
end
@post = Post.find(params[:id])
@post_flag = PostFlag.new(:post_id => @post.id)
@post_appeal = PostAppeal.new(:post_id => @post.id)