Files
old-holivud2/app/controllers/contract_templates/qr_codes_controller.rb
2020-07-20 13:28:40 +00:00

34 lines
854 B
Ruby

class ContractTemplates::QrCodesController < ApplicationController
before_action :set_contract_template
def show
send_file qr_code.to_png, download_attributes
end
private
def contract_templates
policy_scope(ContractTemplate)
end
def set_contract_template
@contract_template = contract_templates.find(params[:contract_template_id])
end
def qr_code
if params[:multi_sign_ids].present?
contract_templates_group = authorize contract_templates.where(id: params[:multi_sign_ids]).order_by_recent
authorize QrCode.build_from_multiple_contract_templates(contract_templates_group, @contract_template.project)
else
authorize QrCode.build_from_contract_template(@contract_template)
end
end
def download_attributes
{
filename: qr_code.filename,
type: "image/png",
}
end
end