diff --git a/app/javascript/submission_form/i18n.js b/app/javascript/submission_form/i18n.js index fa54cf49..3da091a9 100644 --- a/app/javascript/submission_form/i18n.js +++ b/app/javascript/submission_form/i18n.js @@ -11,6 +11,7 @@ const en = { number: 'Number', image: 'Image', take_photo: 'Take photo', + number_phone_is_invalid: '{number} phone is invalid', file: 'File', select: 'Select', checkbox: 'Checkbox', @@ -85,6 +86,7 @@ const es = { file: 'Archivo', select: 'Seleccionar', checkbox: 'Casilla', + number_phone_is_invalid: '{number} teléfono es inválido', multiple: 'Múltiple', radio: 'Radio', cells: 'Celdas', @@ -160,6 +162,7 @@ const it = { cells: 'Celle', stamp: 'Timbro', payment: 'Pagamento', + number_phone_is_invalid: '{number} telefono non è valido', phone: 'Telefono', submit_form: 'Invia Modulo', sign_now: 'Firma ora', @@ -230,6 +233,7 @@ const de = { cells: 'Zellen', stamp: 'Stempel', payment: 'Zahlung', + number_phone_is_invalid: '{number} Telefonnummer ist ungültig', phone: 'Telefon', submit_form: 'Formular absenden', sign_now: 'Jetzt unterschreiben', @@ -300,6 +304,7 @@ const fr = { cells: 'Cellules', stamp: 'Tampon', payment: 'Paiement', + number_phone_is_invalid: '{number} téléphone est invalide', phone: 'Téléphone', submit_form: 'Envoyer le Formulaire', sign_now: 'Signer maintenant', @@ -370,6 +375,7 @@ const pl = { cells: 'Komórki', stamp: 'Pieczątka', payment: 'Płatność', + number_phone_is_invalid: '{number} telefon jest nieprawidłowy', phone: 'Telefon', submit_form: 'Wyślij Formularz', sign_now: 'Podpisz teraz', @@ -440,6 +446,7 @@ const uk = { cells: 'Клітинки', stamp: 'Штамп', payment: 'Платіж', + number_phone_is_invalid: '{number} телефон недійсний', phone: 'Телефон', submit_form: 'Надіслати Форму', sign_now: 'Підписати зараз', @@ -511,6 +518,7 @@ const cs = { stamp: 'Razítko', payment: 'Platba', phone: 'Telefon', + number_phone_is_invalid: '{number} telefon je neplatný', submit_form: 'Odeslat formulář', sign_now: 'Podepsat nyní', type_here_: 'Zadejte zde', @@ -580,6 +588,7 @@ const pt = { cells: 'Células', stamp: 'Carimbo', payment: 'Pagamento', + number_phone_is_invalid: '{number} telefone é inválido', phone: 'Telefone', submit_form: 'Enviar Formulário', sign_now: 'Assinar agora', @@ -651,6 +660,7 @@ const he = { stamp: 'חותמת', payment: 'תשלום', phone: 'טלפון', + number_phone_is_invalid: '{number} טלפון אינו חוקי', submit_form: 'שלח טופס', sign_now: 'חתום כעת', type_here_: 'הקלד כאן', @@ -723,6 +733,7 @@ const nl = { stamp: 'Stempel', payment: 'Betaling', phone: 'Telefoon', + number_phone_is_invalid: '{number} telefoon is ongeldig', submit_form: 'Formulier verzenden', sign_now: 'Nu ondertekenen', type_here_: 'Typ hier...', @@ -794,6 +805,7 @@ const ar = { minimize: 'تصغير', payment: 'الدفع', phone: 'هاتف', + number_phone_is_invalid: '{number} هاتف غير صالح', submit_form: 'إرسال النموذج', sign_now: 'وقع الآن', type_here_: 'اكتب هنا', @@ -865,6 +877,7 @@ const ko = { minimize: '최소화', payment: '결제', phone: '전화', + number_phone_is_invalid: '{number} 전화번호가 유효하지 않습니다', submit_form: '양식 제출', sign_now: '지금 서명', type_here_: '여기에 입력...', diff --git a/app/javascript/submission_form/phone_step.vue b/app/javascript/submission_form/phone_step.vue index 403544d0..d3e33a41 100644 --- a/app/javascript/submission_form/phone_step.vue +++ b/app/javascript/submission_form/phone_step.vue @@ -174,6 +174,14 @@ export default { phone: this.$refs.phone.value }), headers: { 'Content-Type': 'application/json' } + }).then(async (resp) => { + if (resp.status === 422) { + const data = await resp.json() + + alert(this.t('number_phone_is_invalid').replace('{number}', this.$refs.phone.value)) + + return Promise.reject(new Error(data.error)) + } }) }, async submit () { @@ -186,13 +194,13 @@ export default { return Promise.reject(new Error('phone invalid')) } else if (!this.isCodeSent) { - this.sendVerificationCode() - - this.$emit('update:model-value', this.$refs.phone.value) + return this.sendVerificationCode().then(() => { + this.$emit('update:model-value', this.$refs.phone.value) - this.isCodeSent = true + this.isCodeSent = true - return Promise.reject(new Error('verify with code')) + return Promise.reject(new Error('verify with code')) + }) } else { return Promise.resolve({}) }