Files
nairobi/app/controllers/legislation/processes_controller.rb
2017-01-04 14:02:25 +01:00

67 lines
1.5 KiB
Ruby

class Legislation::ProcessesController < Legislation::BaseController
has_filters %w{open next past}, only: :index
load_and_authorize_resource
def index
@current_filter ||= 'open'
@processes = ::Legislation::Process.send(@current_filter).page(params[:page])
end
def show
if @process.show_phase?(:debate)
render :show
else
render :phase_not_open
end
end
def draft_publication
phase :draft_publication
if @process.show_phase?(@phase)
if draft_version = @process.draft_versions.published.last
redirect_to legislation_process_draft_version_path(@process, draft_version)
else
render :phase_empty
end
else
render :phase_not_open
end
end
def allegations
phase :allegations
if @process.show_phase?(@phase)
if draft_version = @process.draft_versions.published.last
redirect_to legislation_process_draft_version_path(@process, draft_version)
else
render :phase_empty
end
else
render :phase_not_open
end
end
def final_version_publication
phase :final_version_publication
if @process.show_phase?(@phase)
if final_version = @process.final_draft_version
redirect_to legislation_process_draft_version_path(@process, final_version)
else
render :phase_empty
end
else
render :phase_not_open
end
end
private
def phase(phase)
@process = ::Legislation::Process.find(params[:process_id])
@phase = phase
end
end