set translations en and es

This commit is contained in:
Alexandro Uc Santos
2024-05-18 17:30:39 -06:00
parent 1027f38eb0
commit c08567beda
11 changed files with 737 additions and 82 deletions

View File

@@ -7,11 +7,13 @@
import Spiner from '../components/ui/Spiner.vue';
import { useRouter } from 'vue-router';
import { useNotificationsStore } from '../stores/notifications';
import { useAuthStore } from '../stores/auth';
import { useAuthStore } from '../stores/auth';
import { useI18n } from 'vue-i18n';
const router = useRouter();
const notifications = useNotificationsStore()
const auth = useAuthStore();
const { t } = useI18n()
const form = reactive({
email: '',
@@ -43,7 +45,7 @@ import { useAuthStore } from '../stores/auth';
}
const result = await regiter(data);
if(result.msg === 'success' && result.data !== null) {
msgSuccess.value = 'Te enviamos un código al correo, ingresado!';
msgSuccess.value = t('messages.sendCode');
checksum.value = result.data.checksum;
step.value = 2;
clearMessages();
@@ -60,7 +62,7 @@ import { useAuthStore } from '../stores/auth';
msgError.value = '';
msgSuccess.value = '';
if(form.code.length < 6) {
msgError.value = 'Ingresa código valido';
msgError.value = t('errors.code');
clearMessages();
return;
} else {
@@ -75,7 +77,7 @@ import { useAuthStore } from '../stores/auth';
const result = await regiterConfirm(data);
// console.log(result);
if(result.msg === 'success' && result.data !== null){
msgSuccess.value = 'Registro exitoso!';
// msgSuccess.value = 'Registro exitoso!';
step.value = 3;
checksum.value = '';
Object.assign(form, {
@@ -86,7 +88,7 @@ import { useAuthStore } from '../stores/auth';
});
clearMessages();
notifications.$patch({
text : 'Registro exitoso, Complete su registro!',
text : t('messages.register'),
show : true,
error: false
});
@@ -107,13 +109,13 @@ import { useAuthStore } from '../stores/auth';
const validations = () => {
const pass = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{8,}$/;
if(form.email.trim() == '' || form.pwd.trim() == '' || form.retryPwd.trim() == '') {
return 'Todos los campos con obligatorios';
return t('errors.requireds');
} else if (!validateEmail(form.email)) {
return 'Correo electrónico no es valido'
return t('errors.email')
} else if(!pass.test(form.pwd)) {
return 'Contraseña poco segura';
return t('errors.weakPassword');
} else if (form.pwd != form.retryPwd) {
return 'Las contraseñas no coinciden';
return t('errors.matchPassword');
} else {
return '';
}
@@ -134,7 +136,7 @@ import { useAuthStore } from '../stores/auth';
}
const result = await regiter(data);
if(result.msg === 'success' && result.data !== null) {
msgSuccess.value = 'Te enviamos un código al correo, ingresado!';
msgSuccess.value = t('messages.sendCode');
checksum.value = result.data.checksum;
clearMessages();
} else {
@@ -151,26 +153,26 @@ import { useAuthStore } from '../stores/auth';
<template>
<div class="d-flex flex-column my-5 justify-content-center align-items-center">
<h2 class="title">Registro de nuevos usuarios</h2>
<h2 class="title">{{ t('login.register') }}</h2>
<div class="form-content">
<form v-if="step === 1" @submit.prevent="handleRegister">
<NotificationBadge :msg="msgError" v-if="msgError != ''"/>
<NotificationBadge :msg="msgSuccess" :is-error="false" v-if="msgSuccess != ''"/>
<CustomInput
label="Ingresa tu correo electrónico"
:label="t('labels.email')"
name="email"
type="email"
v-model:field="form.email"
/>
<CustomInput
label="Contraseña"
:label="t('labels.password')"
name="password"
type="password"
v-model:field="form.pwd"
help-text="La Contraseña debe ser mínimo 8 caracteres, al menos una mayúscula, al menos una minúscula, y un digito."
:help-text="t('login.helptext')"
/>
<CustomInput
label="Confirma Contraseña"
:label="t('labels.password3')"
name="retryPassword"
type="password"
v-model:field="form.retryPwd"
@@ -179,34 +181,34 @@ import { useAuthStore } from '../stores/auth';
<input
v-else
type="submit"
class="btn-primary-lg btn-lg-block radius-1 mt-5" value="Continuar">
class="btn-primary-lg btn-lg-block radius-1 mt-5" :value="t('buttons.continue')">
<p class="mt-5 fs-6 text-center">
Al registrarte aceptas nuestros
{{ t('login.notice') }}
<RouterLink
class="btn-text me-1"
:to="{name: 'terms-conditions'}"
target="_blank">términos y condiciones</RouterLink>
y
target="_blank">{{t('buttons.terms')}}</RouterLink>
{{ t('global.and') }}
<RouterLink
class="btn-text ms-1"
:to="{name: 'notice-privacy'}"
target="_blank"> Aviso de privaciadad</RouterLink>
target="_blank"> {{ t('buttons.noticePrivacity') }}</RouterLink>
</p>
<p class="mt-5 fs-6 text-center">¿Ya tienes una cuenta? <RouterLink class="btn-text" :to="{name: 'login'}">Ingresa aqui</RouterLink></p>
<p class="mt-5 fs-6 text-center"> {{t('login.questionAccount')}} <RouterLink class="btn-text" :to="{name: 'login'}">{{ t('buttons.enter') }}</RouterLink></p>
</form>
<form v-if="step === 2" @submit.prevent="handleConfirmRegister" class="mx-5">
<div class="d-flex justify-content-center align-items-center mb-4">
<a
@click="handleBack(1)"
class="btn-text ms-2"><i class="fa-solid fa-arrow-left"></i> Volver</a>
class="btn-text ms-2"><i class="fa-solid fa-arrow-left"></i> {{t('buttons.back')}}</a>
</div>
<NotificationBadge :msg="msgError" v-if="msgError != ''"/>
<NotificationBadge :msg="msgSuccess" :is-error="false" v-if="msgSuccess != ''"/>
<p class="help-info">Te enviamos un código de verificación al correo electrónico, ingresalo para confirmar registro. No olvides revisar en la carpeta spam</p>
<p class="help-info">{{ t('login.helptextCode') }}</p>
<CustomInput
label="Ingresa el código"
:label="t('labels.code')"
name="code"
type="text"
v-model:field="form.code"
@@ -214,13 +216,13 @@ import { useAuthStore } from '../stores/auth';
<div v-if="!loading" class="d-flex justify-content-center align-items-center mt-4">
<a
@click="resendCode()"
class="btn-text ms-2"><i class="fa-solid fa-rotate-right"></i> Reenviar código</a>
class="btn-text ms-2"><i class="fa-solid fa-rotate-right"></i> {{ t('buttons.resendCode') }}</a>
</div>
<Spiner v-if="loading" class="mt-5"/>
<input
v-else
type="submit"
class="btn-primary-lg btn-lg-block radius-1 mt-5" value="Continuar">
class="btn-primary-lg btn-lg-block radius-1 mt-5" :value="t('buttons.continue')">
</form>
</div>
</div>