Files
old-holivud2/app/controllers/public/amendments_controller.rb
2020-07-22 19:18:05 +02:00

44 lines
1.3 KiB
Ruby

class Public::AmendmentsController < Public::BaseController
skip_after_action :verify_authorized, :verify_policy_scoped
before_action :set_account, :set_project, :set_contract_template, :set_release
def new
if @release.amendment_signed?
render :create, locals: { already_signed: true }
end
end
def create
@release.amendment_signer_name = release_params[:amendment_signer_name]
@release.amendment_signature_base64 = release_params[:amendment_signature_base64]
render :new unless @release.save
end
private
def release_params
release_type = @contract_template.release_type
param_name = "#{release_type}_release".to_s
params.require(param_name).permit(:amendment_signer_name, :amendment_signature_base64)
end
def set_release
release_type = @contract_template.release_type
param_name = "#{release_type}_release_id".to_s
release_id = params[param_name]
@release = @contract_template.releases.find(release_id)
end
def set_contract_template
@contract_template = @project.contract_templates.find(params[:contract_template_id])
end
def set_project
@project = @account.projects.find(params[:project_id])
end
def set_account
@account = Account.find_by(slug: params[:account_id])
end
end