Files
grecia/app/controllers/admin/legislation/draft_versions_controller.rb
Javi Martín 6278175f57 Update legislation drafts translatable fields
Updating it required reorganizing the form so translatable fields are
together.

We also needed to add a `hint` option to the form label and input
methods so the hint wouldn't show up for every language.

Finally, the markdown editor needed to use the same globalize attributes
as inputs, labels and hints, which adds a bit of duplication.
2018-10-22 15:44:14 +02:00

54 lines
1.7 KiB
Ruby

class Admin::Legislation::DraftVersionsController < Admin::Legislation::BaseController
include Translatable
load_and_authorize_resource :draft_version, class: "Legislation::DraftVersion", through: :process, prepend: true
load_and_authorize_resource :process, class: "Legislation::Process", prepend: true
def index
@draft_versions = @process.draft_versions
end
def create
if @draft_version.save
link = legislation_process_draft_version_path(@process, @draft_version).html_safe
notice = t('admin.legislation.draft_versions.create.notice', link: link)
redirect_to admin_legislation_process_draft_versions_path, notice: notice
else
flash.now[:error] = t('admin.legislation.draft_versions.create.error')
render :new
end
end
def update
if @draft_version.update(draft_version_params)
link = legislation_process_draft_version_path(@process, @draft_version).html_safe
notice = t('admin.legislation.draft_versions.update.notice', link: link)
edit_path = edit_admin_legislation_process_draft_version_path(@process, @draft_version)
redirect_to edit_path, notice: notice
else
flash.now[:error] = t('admin.legislation.draft_versions.update.error')
render :edit
end
end
def destroy
@draft_version.destroy
notice = t('admin.legislation.draft_versions.destroy.notice')
redirect_to admin_legislation_process_draft_versions_path, notice: notice
end
private
def draft_version_params
params.require(:legislation_draft_version).permit(
:status,
:final_version,
translation_params(Legislation::DraftVersion)
)
end
def resource
@draft_version
end
end