Skip to content

Commit

Permalink
add disclosure message
Browse files Browse the repository at this point in the history
  • Loading branch information
omohokcoj committed May 12, 2024
1 parent 929d295 commit 55d9511
Show file tree
Hide file tree
Showing 4 changed files with 87 additions and 6 deletions.
1 change: 1 addition & 0 deletions app/javascript/form.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ window.customElements.define('submission-form', class extends HTMLElement {
isDemo: this.dataset.isDemo === 'true',
attribution: this.dataset.attribution !== 'false',
withConfetti: this.dataset.withConfetti !== 'false',
withDisclosure: this.dataset.withDisclosure === 'true',
withTypedSignature: this.dataset.withTypedSignature !== 'false',
authenticityToken: document.querySelector('meta[name="csrf-token"]')?.content,
values: reactive(JSON.parse(this.dataset.values)),
Expand Down
21 changes: 16 additions & 5 deletions app/javascript/submission_form/form.vue
Original file line number Diff line number Diff line change
Expand Up @@ -324,6 +324,8 @@
:previous-value="previousSignatureValueFor(currentField)"
:with-typed-signature="withTypedSignature"
:attachments-index="attachmentsIndex"
:button-text="buttonText"
:with-disclosure="withDisclosure"
:submitter-slug="submitterSlug"
:show-field-names="showFieldNames"
@attached="attachments.push($event)"
Expand Down Expand Up @@ -382,7 +384,7 @@
</div>
<div
v-if="currentField.type !== 'payment' || submittedValues[currentField.uuid]"
class="mt-6 md:mt-8"
:class="withDisclosure && currentField.type === 'signature' ? 'mt-2' : 'mt-6 md:mt-8'"
>
<button
id="submit_form_button"
Expand All @@ -396,11 +398,8 @@
v-if="isSubmitting"
class="mr-1 animate-spin"
/>
<span v-if="alwaysMinimize || stepFields.length === currentStep + 1">
{{ t('submit') }}
</span>
<span v-else>
{{ t('next') }}
{{ buttonText }}
</span><span
v-if="isSubmitting"
class="w-6 flex justify-start mr-1"
Expand Down Expand Up @@ -554,6 +553,11 @@ export default {
required: false,
default: false
},
withDisclosure: {
type: Boolean,
required: false,
default: false
},
reuseSignature: {
type: Boolean,
required: false,
Expand Down Expand Up @@ -682,6 +686,13 @@ export default {
isMobile () {
return /android|iphone|ipad/i.test(navigator.userAgent)
},
buttonText () {
if (this.alwaysMinimize || this.stepFields.length === this.currentStep + 1) {
return this.t('submit')
} else {
return this.t('next')
}
},
alwaysMinimize () {
return this.minimize || (this.orientation?.includes('landscape') && this.isMobile && parseInt(window.innerHeight) < 550)
},
Expand Down
39 changes: 39 additions & 0 deletions app/javascript/submission_form/i18n.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
const en = {
text: 'Text',
by_clicking_you_agree_to_the: 'By clicking "{button}", you agree to the',
electronic_signature_disclosure: 'Electronic Signature Disclosure',
esignature_disclosure: 'eSignature Disclosure',
signature: 'Signature',
initials: 'Initials',
date: 'Date',
Expand Down Expand Up @@ -65,6 +68,9 @@ const en = {
}

const es = {
by_clicking_you_agree_to_the: 'Al hacer clic en "{button}", usted acepta el',
electronic_signature_disclosure: 'Divulgación de Firma Electrónica',
esignature_disclosure: 'Divulgación de eFirma',
minimize: 'Minimizar',
text: 'Texto',
signature: 'Firma',
Expand Down Expand Up @@ -130,6 +136,9 @@ const es = {
}

const it = {
by_clicking_you_agree_to_the: 'Cliccando su "{button}", accetti il',
electronic_signature_disclosure: 'Divulgazione della Firma Elettronica',
esignature_disclosure: 'Divulgazione della eFirma',
minimize: 'Minimizza',
text: 'Testo',
signature: 'Firma',
Expand Down Expand Up @@ -195,6 +204,9 @@ const it = {
}

const de = {
by_clicking_you_agree_to_the: 'Durch Klicken auf "{button}" stimmen Sie zu, dass Sie die',
electronic_signature_disclosure: 'Elektronische Unterschriftenoffenlegung',
esignature_disclosure: 'eSignatur Offenlegung',
minimize: 'Minimieren',
text: 'Text',
signature: 'Unterschrift',
Expand Down Expand Up @@ -260,6 +272,9 @@ const de = {
}

const fr = {
by_clicking_you_agree_to_the: 'En cliquant sur "{button}", vous acceptez la',
electronic_signature_disclosure: 'Divulgation de Signature Électronique',
esignature_disclosure: 'Divulgation de la eSignature',
minimize: 'Réduire',
text: 'Texte',
signature: 'Signature',
Expand Down Expand Up @@ -325,6 +340,9 @@ const fr = {
}

const pl = {
by_clicking_you_agree_to_the: 'Klikając na "{button}", zgadzasz się na',
electronic_signature_disclosure: 'Ujawnienie Elektronicznej Sygnatury',
esignature_disclosure: 'Ujawnienie ePodpisu',
minimize: 'Zminimalizuj',
text: 'Tekst',
signature: 'Podpis',
Expand Down Expand Up @@ -390,6 +408,9 @@ const pl = {
}

const uk = {
by_clicking_you_agree_to_the: 'Натиснувши на "{button}", ви погоджуєтеся з',
electronic_signature_disclosure: 'Розголошення Електронного Підпису',
esignature_disclosure: 'Розголошення еПідпису',
minimize: 'Зменшити',
text: 'Текст',
signature: 'Підпис',
Expand Down Expand Up @@ -455,6 +476,9 @@ const uk = {
}

const cs = {
by_clicking_you_agree_to_the: 'Kliknutím na "{button}" souhlasíte s',
electronic_signature_disclosure: 'Zveřejněním Elektronického Podpisu',
esignature_disclosure: 'Zveřejnění ePodpisu',
minimize: 'Minimalizovat',
text: 'Text',
signature: 'Podpis',
Expand Down Expand Up @@ -520,6 +544,9 @@ const cs = {
}

const pt = {
by_clicking_you_agree_to_the: 'Ao clicar em "{button}", você concorda com o',
electronic_signature_disclosure: 'Divulgação de Assinatura Eletrônica',
esignature_disclosure: 'Divulgação da eAssinatura',
minimize: 'Minimizar',
text: 'Texto',
signature: 'Assinatura',
Expand Down Expand Up @@ -585,6 +612,9 @@ const pt = {
}

const he = {
by_clicking_you_agree_to_the: 'על ידי לחיצה על "{button}", אתה מסכים ל',
electronic_signature_disclosure: 'חשיפת חתימה אלקטרונית',
esignature_disclosure: 'חשיפת ה-eחתימה',
minimize: 'לקטן',
text: 'טקסט',
signature: 'חתימה',
Expand Down Expand Up @@ -651,6 +681,9 @@ const he = {
}

const nl = {
by_clicking_you_agree_to_the: 'Door op "{button}" te klikken, gaat u akkoord met de',
electronic_signature_disclosure: 'Openbaarmaking van Elektronische Handtekening',
esignature_disclosure: 'Openbaarmaking van eHandtekening',
minimize: 'Minimaliseren',
text: 'Tekst',
signature: 'Handtekening',
Expand Down Expand Up @@ -717,6 +750,9 @@ const nl = {
}

const ar = {
by_clicking_you_agree_to_the: 'بالنقر فوق "{button}"، أنت توافق على',
electronic_signature_disclosure: 'كشف التوقيع الإلكتروني',
esignature_disclosure: 'كشف التوقيع الإلكتروني',
text: 'نص',
signature: 'توقيع',
initials: 'الاختصارات',
Expand Down Expand Up @@ -783,6 +819,9 @@ const ar = {
}

const ko = {
by_clicking_you_agree_to_the: '"{button}"를 클릭함으로써, 다음에 동의하게 됩니다',
electronic_signature_disclosure: '전자 서명 공개',
esignature_disclosure: '전자 서명 공개',
text: '텍스트',
signature: '서명',
initials: '이니셜',
Expand Down
32 changes: 31 additions & 1 deletion app/javascript/submission_form/signature_step.vue
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
<template>
<div dir="auto">
<div
dir="auto"
class="relative"
>
<div
class="flex justify-between items-center w-full"
:class="{ 'mb-2': !field.description }"
Expand Down Expand Up @@ -136,6 +139,23 @@
type="text"
@input="updateWrittenSignature"
>
<div
v-if="withDisclosure"
dir="auto"
class="text-base-content/60 text-xs text-center w-full mt-1"
>
{{ t('by_clicking_you_agree_to_the').replace('{button}', buttonText.charAt(0).toUpperCase() + buttonText.slice(1)) }} <a
href="https://www.docuseal.co/esign-disclosure"
target="_blank"
>
<span class="inline md:hidden">
{{ t('esignature_disclosure') }}
</span>
<span class="hidden md:inline">
{{ t('electronic_signature_disclosure') }}
</span>
</a>
</div>
</div>
</template>
Expand Down Expand Up @@ -176,6 +196,16 @@ export default {
required: false,
default: true
},
withDisclosure: {
type: Boolean,
required: false,
default: false
},
buttonText: {
type: String,
required: false,
default: 'Submit'
},
withTypedSignature: {
type: Boolean,
required: false,
Expand Down

0 comments on commit 55d9511

Please sign in to comment.