* Don't show who disapproved the post to other users. Only show the creator to mods or to the disapprover themselves. * Let unprivileged users see the /post_disapprovals index.
25 lines
684 B
Ruby
25 lines
684 B
Ruby
class PostDisapprovalsController < ApplicationController
|
|
before_action :approver_only, only: [:create]
|
|
skip_before_action :api_check
|
|
respond_to :js, :html, :json, :xml
|
|
|
|
def create
|
|
cookies.permanent[:moderated] = Time.now.to_i
|
|
@post_disapproval = PostDisapproval.create(post_disapproval_params)
|
|
respond_with(@post_disapproval)
|
|
end
|
|
|
|
def index
|
|
@post_disapprovals = PostDisapproval.paginated_search(params)
|
|
@post_disapprovals = @post_disapprovals.includes(:user) if request.format.html?
|
|
|
|
respond_with(@post_disapprovals)
|
|
end
|
|
|
|
private
|
|
|
|
def post_disapproval_params
|
|
params.require(:post_disapproval).permit(%i[post_id reason message])
|
|
end
|
|
end
|