33 lines
766 B
Ruby
33 lines
766 B
Ruby
module Amendmenable
|
|
extend ActiveSupport::Concern
|
|
|
|
included do
|
|
include ActiveStorageSupport::SupportForBase64
|
|
|
|
has_one_base64_attached :amendment_signature
|
|
|
|
with_options on: :amendment do
|
|
validates :amendment_signer_name, presence: true
|
|
validates :amendment_signature, attached: true
|
|
end
|
|
end
|
|
|
|
def amendment_signable?
|
|
contract_template.present? && contract_template.amendment_clause.present?
|
|
end
|
|
|
|
def amendment_signed?
|
|
amendment_signature.attached?
|
|
end
|
|
|
|
def amendment_signature_base64
|
|
nil
|
|
end
|
|
|
|
def amendment_signature_base64=(data_uri)
|
|
return if data_uri.blank?
|
|
|
|
amendment_signature.attach(data: data_uri, filename: "amendment_signature.png", content_type: "image/png", identify: "false")
|
|
end
|
|
end
|