Replace this common pattern in controllers:
@tags = Tag.search(search_params).paginate(params[:page], :limit => params[:limit], :search_count => params[:search])
with this:
@tags = Tag.paginated_search(params)
`search_count` is used to skip doing a full page count when we're not
doing a search (on the assumption that the number of results will be
high when not constrained by a search). We didn't do this consistently
though. Refactor to do this in every controller.
51 lines
1.1 KiB
Ruby
51 lines
1.1 KiB
Ruby
class JanitorTrialsController < ApplicationController
|
|
respond_to :html, :xml, :json
|
|
before_action :moderator_only, :only => [:create, :promote, :demote]
|
|
|
|
def new
|
|
@janitor_trial = JanitorTrial.new
|
|
respond_with(@janitor_trial)
|
|
end
|
|
|
|
def edit
|
|
@janitor_trial = JanitorTrial.find(params[:id])
|
|
respond_with(@janitor_trial)
|
|
end
|
|
|
|
def index
|
|
@janitor_trials = JanitorTrial.paginated_search(params)
|
|
respond_with(@janitor_trials)
|
|
end
|
|
|
|
def create
|
|
@janitor_trial = JanitorTrial.create(janitor_trial_params)
|
|
respond_with(@janitor_trial, :location => janitor_trials_path)
|
|
end
|
|
|
|
def promote
|
|
@janitor_trial = JanitorTrial.find(params[:id])
|
|
@janitor_trial.promote!
|
|
respond_with(@janitor_trial) do |format|
|
|
format.js
|
|
end
|
|
end
|
|
|
|
def demote
|
|
@janitor_trial = JanitorTrial.find(params[:id])
|
|
@janitor_trial.demote!
|
|
respond_with(@janitor_trial) do |format|
|
|
format.js
|
|
end
|
|
end
|
|
|
|
def test
|
|
@tester = JanitorTrialTester.new(params[:janitor_trial][:user_name])
|
|
end
|
|
|
|
private
|
|
|
|
def janitor_trial_params
|
|
params.require(:janitor_trial).permit(%i[user_id user_name])
|
|
end
|
|
end
|