Compare commits

..

2 Commits

5 changed files with 27 additions and 11 deletions

View File

@ -26,8 +26,9 @@
"column": 2,
"fields": [
{ "key": "nombre", "label": "form.nombre", "type": "text", "required": true },
{ "key": "segundo_nombre", "label": "form.segundo_nombre", "type": "text" },
{ "key": "apellido", "label": "form.apellido", "type": "text", "required": true },
{ "key": "documentos", "label": "form.documentos", "type": "text", "required": true, "colspan": 2 },
{ "key": "documentos", "label": "form.documentos", "type": "phone", "required": true },
{ "key": "correo", "label": "form.correo", "type": "email", "required": true, "colspan": 2 },
{ "key": "reglamento_firma", "label": "form.reglamento_firma", "type": "text", "required": true, "colspan": 2, "placeholder": "form.reglamento_firma_placeholder" },
{ "key": "fecha_nacimiento", "label": "form.fecha_nacimiento", "type": "date", "required": true },
@ -221,7 +222,7 @@
"label": "form.step8",
"column": 2,
"fields": [
{ "key": "confirmar_nombre", "label": "form.confirmar_nombre", "type": "text", "readonly": true, "valueFrom": "nombre" },
{ "key": "confirmar_nombre", "label": "form.confirmar_nombre", "type": "text", "readonly": true, "valueFrom": "nombre_completo" },
{ "key": "confirmar_firma", "label": "form.confirmar_firma", "type": "text", "readonly": true, "valueFrom": "reglamento_firma" },
{
"key": "declaracion_voluntario",

View File

@ -353,6 +353,12 @@
"dial_code": "+1",
"flag": "🇺🇸"
},
{
"label": "Puerto Rico",
"value": "Puerto Rico",
"dial_code": "+1",
"flag": "🇵🇷"
},
{
"label": "Estonia",
"value": "Estonia",
@ -1157,4 +1163,4 @@
"dial_code": "+263",
"flag": "🇿🇼"
}
]
]

View File

@ -236,15 +236,19 @@ const buildPayload = () => {
const responses = [];
config.value.steps.forEach((step, si) => {
step.fields.forEach((field) => {
const value = formData[field.key];
if (value !== "" && !(Array.isArray(value) && value.length === 0)) {
if (field.key === "segundo_nombre") return;
let finalValue = formData[field.key];
if (field.key === "nombre" && formData.segundo_nombre) {
finalValue = `${finalValue} ${formData.segundo_nombre}`;
}
if (finalValue !== "" && !(Array.isArray(finalValue) && finalValue.length === 0)) {
responses.push({
key: field.key,
value: value,
value: finalValue,
section_id: `step_${si}`
});
if (field.levels && Array.isArray(value)) {
value.forEach((optVal) => {
if (field.levels && Array.isArray(finalValue)) {
finalValue.forEach((optVal) => {
const levelKey = `${field.key}_nivel_${optVal}`;
const levelVal = formData[levelKey];
if (levelVal) {
@ -458,9 +462,13 @@ watch(currentStep, (step) => {
}
}, { immediate: true });
watch([() => formData.nombre, () => formData.segundo_nombre], ([nombre, segundo_nombre]) => {
formData.nombre_completo = [nombre, segundo_nombre].filter(Boolean).join(" ");
});
const getFieldIcon = (field) => {
const k = field.key;
if (k === "nombre" || k === "emergencia_nombre") return "ph:user";
if (k === "nombre" || k === "segundo_nombre" || k === "emergencia_nombre") return "ph:user";
if (k === "apellido") return "ph:identification-card";
if (k === "documentos") return "ph:cardholder";
if (k === "correo" || k === "emergencia_correo") return "ph:envelope";

View File

@ -211,6 +211,7 @@
"form.step6": "Información Médica",
"form.step7": "Contacto de Emergencia",
"form.nombre": "Nombre",
"form.segundo_nombre": "Segundo Nombre",
"form.apellido": "Apellido",
"form.documentos": "Documento de Identidad / Pasaporte",
"form.correo": "Correo Electrónico",
@ -312,7 +313,7 @@
"form.declaracion.autorizo_datos": "Autorizo el tratamiento de mis datos personales conforme a la Política de Privacidad del Centro y la legislación aplicable.",
"form.declaracion.confidencialidad": "Me comprometo a guardar absoluta confidencialidad respecto de toda la información a la que tenga acceso durante mi participación.",
"form.declaracion.voluntaria": "Entiendo que mi participación es completamente voluntaria y que no genera relación laboral alguna con el Centro.",
"form.confirmar_nombre": "Nombre",
"form.confirmar_nombre": "Nombres",
"form.confirmar_firma": "Firma electrónica",
"form.confirmacion": "Confirmación final",
"form.confirmacion_label": "Confirmo que los datos personales y la firma mostrados arriba son correctos y corresponden a mi persona.",

View File

@ -5,7 +5,7 @@ export const prerender = false;
const COLUMNS = [
"aceptacion_reglamento",
"nombre",
"nombre_completo",
"apellido",
"documentos",
"correo",