staging #80
|
|
@ -28,7 +28,7 @@
|
||||||
{ "key": "nombre", "label": "form.nombre", "type": "text", "required": true },
|
{ "key": "nombre", "label": "form.nombre", "type": "text", "required": true },
|
||||||
{ "key": "segundo_nombre", "label": "form.segundo_nombre", "type": "text" },
|
{ "key": "segundo_nombre", "label": "form.segundo_nombre", "type": "text" },
|
||||||
{ "key": "apellido", "label": "form.apellido", "type": "text", "required": true },
|
{ "key": "apellido", "label": "form.apellido", "type": "text", "required": true },
|
||||||
{ "key": "documentos", "label": "form.documentos", "type": "phone", "required": true },
|
{ "key": "documentos", "label": "form.documentos", "type": "text", "required": true },
|
||||||
{ "key": "correo", "label": "form.correo", "type": "email", "required": true, "colspan": 2 },
|
{ "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": "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 },
|
{ "key": "fecha_nacimiento", "label": "form.fecha_nacimiento", "type": "date", "required": true },
|
||||||
|
|
@ -45,6 +45,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{ "key": "direccion_completa", "label": "form.direccion", "type": "text", "required": true, "colspan": 2 },
|
{ "key": "direccion_completa", "label": "form.direccion", "type": "text", "required": true, "colspan": 2 },
|
||||||
|
{ "key": "direccion_postal", "label": "form.direccion_postal", "type": "text", "required": false, "colspan": 2 },
|
||||||
{ "key": "ciudad", "label": "form.ciudad", "type": "text", "required": true },
|
{ "key": "ciudad", "label": "form.ciudad", "type": "text", "required": true },
|
||||||
{ "key": "estado", "label": "form.estado", "type": "text" },
|
{ "key": "estado", "label": "form.estado", "type": "text" },
|
||||||
{ "key": "pais", "label": "form.pais", "type": "select", "required": true, "source": "/forms/paises.json" },
|
{ "key": "pais", "label": "form.pais", "type": "select", "required": true, "source": "/forms/paises.json" },
|
||||||
|
|
@ -214,7 +215,7 @@
|
||||||
"fields": [
|
"fields": [
|
||||||
{ "key": "emergencia_nombre", "label": "form.emergencia_nombre", "type": "text", "required": true },
|
{ "key": "emergencia_nombre", "label": "form.emergencia_nombre", "type": "text", "required": true },
|
||||||
{ "key": "emergencia_parentesco", "label": "form.emergencia_parentesco", "type": "text", "required": true },
|
{ "key": "emergencia_parentesco", "label": "form.emergencia_parentesco", "type": "text", "required": true },
|
||||||
{ "key": "emergencia_telefono", "label": "form.emergencia_telefono", "type": "phone", "required": true },
|
{ "key": "emergencia_telefono", "label": "form.emergencia_telefono", "type": "phone_country", "required": true, "source": "/forms/paises.json" },
|
||||||
{ "key": "emergencia_correo", "label": "form.emergencia_correo", "type": "email", "required": false }
|
{ "key": "emergencia_correo", "label": "form.emergencia_correo", "type": "email", "required": false }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -3,37 +3,37 @@
|
||||||
|
|
||||||
<section id="introduccion">
|
<section id="introduccion">
|
||||||
<h2>Introducción</h2>
|
<h2>Introducción</h2>
|
||||||
<p>El Centro del Reino de Paz y Justicia tiene como misión promover la paz, la justicia, el liderazgo, la educación, la ayuda humanitaria, la responsabilidad social y la cooperación entre comunidades y naciones.</p>
|
<p>El Centro del Reino de Paz y Justicia (CRPJ) tiene como misión promover la paz, la justicia, el liderazgo, la educación, la ayuda humanitaria, la responsabilidad social y la cooperación entre comunidades y naciones.</p>
|
||||||
<p>El presente Reglamento establece el marco jurídico, ético e institucional que regula la participación de los voluntarios, definiendo sus derechos, obligaciones y principios de actuación, con el fin de garantizar que todas las actividades de voluntariado se desarrollen conforme a los valores del Centro y a la legislación aplicable.</p>
|
<p>El presente Reglamento establece el marco jurídico, ético e institucional que regula la participación de los voluntarios, definiendo sus derechos, obligaciones y principios de actuación, con el fin de garantizar que todas las actividades de voluntariado se desarrollen conforme a los valores del CRPJ y a la legislación aplicable.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="objeto-voluntariado">
|
<section id="objeto-voluntariado">
|
||||||
<h2>1. Objeto del Voluntariado</h2>
|
<h2>1. Objeto del Voluntariado</h2>
|
||||||
<p>El voluntario participa libre y voluntariamente en las actividades del Centro con el propósito de contribuir al cumplimiento de su misión institucional en las áreas de educación, desarrollo comunitario, asistencia humanitaria, liderazgo, diplomacia pública, promoción de la paz, la justicia y el servicio a la sociedad.</p>
|
<p>El voluntario participa libre y participa libremente, por un deseo propio y personal, en las actividades del CRPJ con el propósito de contribuir al cumplimiento de la misión institucional en las áreas de educación, desarrollo comunitario, asistencia humanitaria, liderazgo, diplomacia pública, promoción de la paz, la justicia y el servicio a la sociedad.</p>
|
||||||
<p>Toda actividad deberá desarrollarse con espíritu de servicio, responsabilidad, integridad, respeto, cooperación y compromiso con el bienestar común.</p>
|
<p>Toda actividad deberá desarrollarse con espíritu de servicio, responsabilidad, integridad, respeto, cooperación y compromiso con el bienestar común.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="naturaleza-voluntariado">
|
<section id="naturaleza-voluntariado">
|
||||||
<h2>2. Naturaleza del Voluntariado</h2>
|
<h2>2. Naturaleza del Voluntariado</h2>
|
||||||
<p>La participación del voluntario tiene carácter exclusivamente voluntario y no constituye, bajo ninguna circunstancia, una relación laboral, contractual, societaria, de representación, mandato o subordinación con el Centro.</p>
|
<p>La labor de quien participa tiene carácter exclusivamente voluntario y no constituye, bajo ninguna circunstancia, una relación laboral, contractual, societaria, de representación, mandato o subordinación con el CRPJ.</p>
|
||||||
<p>La participación en las actividades no genera derecho a salario, prestaciones laborales, seguridad social, indemnizaciones ni cualquier otra remuneración económica, salvo autorización expresa y por escrito del Centro respecto del reembolso de gastos.</p>
|
<p>La participación en las actividades no genera derecho a salario, prestaciones laborales, seguridad social, indemnizaciones ni cualquier otra remuneración económica, salvo autorización expresa y por escrito del CRPJ respecto del reembolso de gastos.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="requisitos-voluntario">
|
<section id="requisitos-voluntario">
|
||||||
<h2>3. Requisitos para ser Voluntario</h2>
|
<h2>3. Requisitos para ser Voluntario</h2>
|
||||||
<p>El voluntario declara que:</p>
|
<p>El voluntario declara que:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>La información proporcionada es veraz, completa y actualizada.</li>
|
<li>La información proporcionada por el voluntario es veraz, completa y actualizada.</li>
|
||||||
<li>Se encuentra física y mentalmente apto para participar en las actividades.</li>
|
<li>Se encuentra física y mentalmente apto para participar en las actividades.</li>
|
||||||
<li>No existe impedimento legal para su participación.</li>
|
<li>No existe impedimento legal para su participación.</li>
|
||||||
<li>Cumplirá las políticas, reglamentos y procedimientos establecidos por el Centro.</li>
|
<li>Cumplirá las políticas, reglamentos y procedimientos establecidos por el CRPJ.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="seguro">
|
<section id="seguro">
|
||||||
<h2>4. Seguro</h2>
|
<h2>4. Seguro</h2>
|
||||||
<p>Salvo comunicación expresa y por escrito del Centro, cada voluntario será responsable de contar con la cobertura médica, de accidentes y demás seguros que considere necesarios para su participación.</p>
|
<p>Salvo comunicación expresa y por escrito del CRPJ, cada voluntario será responsable de contar con la cobertura médica, de accidentes y demás seguros que considere necesarios para su participación.</p>
|
||||||
<p>La contratación de cualquier seguro por parte del Centro no sustituye la responsabilidad personal del voluntario.</p>
|
<p>La contratación de cualquier seguro por parte del CRPJ no sustituye la responsabilidad personal del voluntario.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="responsabilidad-medica">
|
<section id="responsabilidad-medica">
|
||||||
|
|
@ -43,18 +43,18 @@
|
||||||
|
|
||||||
<section id="cumplimiento-normas">
|
<section id="cumplimiento-normas">
|
||||||
<h2>6. Cumplimiento de Normas</h2>
|
<h2>6. Cumplimiento de Normas</h2>
|
||||||
<p>El voluntario se compromete a cumplir las instrucciones impartidas por los responsables del Centro, respetar las normas de seguridad y actuar siempre con responsabilidad, profesionalismo y respeto hacia todas las personas.</p>
|
<p>El voluntario se compromete a cumplir las instrucciones impartidas por los responsables del CRPJ, respetar las normas de seguridad y actuar siempre con responsabilidad, profesionalismo y respeto hacia todas las personas.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="confidencialidad">
|
<section id="confidencialidad">
|
||||||
<h2>7. Confidencialidad</h2>
|
<h2>7. Confidencialidad</h2>
|
||||||
<p>Toda la información a la que el voluntario tenga acceso durante su participación será considerada confidencial.</p>
|
<p>Toda la información a la que el voluntario tenga acceso durante su participación será considerada confidencial.</p>
|
||||||
<p>El voluntario se obliga a no divulgar información institucional, financiera, estratégica, personal o cualquier otra información reservada, aun después de finalizar su colaboración con el Centro.</p>
|
<p>El voluntario se obliga a no divulgar información institucional, financiera, estratégica, personal o cualquier otra información reservada, aun después de finalizar su colaboración con el CRPJ.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="proteccion-datos">
|
<section id="proteccion-datos">
|
||||||
<h2>8. Protección de Datos Personales</h2>
|
<h2>8. Protección de Datos Personales</h2>
|
||||||
<p>El voluntario autoriza al Centro a recopilar, almacenar y tratar sus datos personales exclusivamente para fines relacionados con:</p>
|
<p>El voluntario autoriza al CRPJ a recopilar, almacenar y tratar sus datos personales exclusivamente para fines relacionados con:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>la administración del programa de voluntariado;</li>
|
<li>la administración del programa de voluntariado;</li>
|
||||||
<li>la comunicación institucional;</li>
|
<li>la comunicación institucional;</li>
|
||||||
|
|
@ -66,59 +66,59 @@
|
||||||
|
|
||||||
<section id="uso-imagen">
|
<section id="uso-imagen">
|
||||||
<h2>9. Uso de Imagen</h2>
|
<h2>9. Uso de Imagen</h2>
|
||||||
<p>El voluntario autoriza al Centro a utilizar fotografías, grabaciones de audio, videos e imágenes obtenidas durante las actividades para fines institucionales, educativos, informativos, promocionales y de recaudación de fondos, salvo manifestación expresa y escrita en contrario.</p>
|
<p>El voluntario autoriza al CRPJ a utilizar fotografías, grabaciones de audio, videos e imágenes obtenidas durante las actividades para fines institucionales, educativos, informativos, promocionales y de recaudación de fondos, salvo manifestación expresa y escrita en caso contrario.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="propiedad-intelectual">
|
<section id="propiedad-intelectual">
|
||||||
<h2>10. Propiedad Intelectual</h2>
|
<h2>10. Propiedad Intelectual</h2>
|
||||||
<p>Todo documento, fotografía, video, material audiovisual, presentación, publicación, contenido o trabajo desarrollado por el voluntario dentro de las actividades institucionales será propiedad exclusiva del Centro, salvo acuerdo escrito en contrario.</p>
|
<p>Todo documento, fotografía, video, material audiovisual, presentación, publicación, contenido o trabajo desarrollado por el voluntario dentro de las actividades institucionales será propiedad exclusiva del CRPJ, salvo acuerdo escrito en caso contrario.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="uso-bienes">
|
<section id="uso-bienes">
|
||||||
<h2>11. Uso y Cuidado de Bienes</h2>
|
<h2>11. Uso y Cuidado de Bienes</h2>
|
||||||
<p>El voluntario deberá utilizar responsablemente los bienes, equipos y materiales del Centro, comprometiéndose a conservarlos y devolverlos cuando le sean requeridos o al finalizar su participación.</p>
|
<p>El voluntario deberá utilizar responsablemente los bienes, equipos y materiales del CRPJ, comprometiéndose a conservarlos y devolverlos cuando le sean requeridos o al finalizar su participación.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="terminacion-voluntariado">
|
<section id="terminacion-voluntariado">
|
||||||
<h2>12. Terminación del Voluntariado</h2>
|
<h2>12. Terminación del Voluntariado</h2>
|
||||||
<p>El Centro podrá suspender o finalizar la participación de cualquier voluntario cuando exista incumplimiento del presente Reglamento, conducta incompatible con los valores institucionales, riesgos para la organización o cualquier otra causa justificada.</p>
|
<p>El CRPJ podrá suspender o finalizar la participación de cualquier voluntario cuando exista incumplimiento del presente Reglamento, conducta incompatible con los valores institucionales, riesgos para la organización o cualquier otra causa justificada.</p>
|
||||||
<p>El voluntario podrá retirarse libremente notificándolo con una anticipación razonable.</p>
|
<p>El voluntario podrá retirarse libremente notificándolo con una anticipación razonable.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="limitacion-responsabilidad">
|
<section id="limitacion-responsabilidad">
|
||||||
<h2>13. Limitación de Responsabilidad</h2>
|
<h2>13. Limitación de Responsabilidad</h2>
|
||||||
<p>El voluntario reconoce que participa libremente en las actividades del Centro y acepta los riesgos normales inherentes a las mismas.</p>
|
<p>El voluntario reconoce que participa libremente en las actividades del CRPJ y acepta los riesgos normales inherentes a las mismas.</p>
|
||||||
<p>En la medida permitida por la legislación aplicable, el Centro, sus directivos, empleados, representantes, colaboradores y demás voluntarios no serán responsables por daños derivados de la participación del voluntario, salvo en casos de dolo o negligencia grave.</p>
|
<p>En la medida permitida por la legislación aplicable, el CRPJ, sus directivos, empleados, representantes, colaboradores y demás voluntarios no serán responsables por daños derivados de la participación del voluntario, salvo en casos de dolo o negligencia grave.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="declaracion-riesgos">
|
<section id="declaracion-riesgos">
|
||||||
<h2>14. Declaración de Asunción de Riesgos</h2>
|
<h2>14. Declaración de Asunción de Riesgos</h2>
|
||||||
<p>El voluntario declara conocer que determinadas actividades pueden implicar riesgos derivados de desplazamientos, trabajo comunitario, asistencia humanitaria, eventos públicos, visitas institucionales u otras actividades propias del programa.</p>
|
<p>El voluntario declara conocer que determinadas actividades pueden implicar riesgos derivados de desplazamientos, trabajo comunitario, asistencia humanitaria, eventos públicos, visitas institucionales u otras actividades propias del programa.</p>
|
||||||
<p>El voluntario acepta participar bajo su propia responsabilidad y asume voluntariamente dichos riesgos, salvo cuando exista dolo o negligencia grave imputable al Centro.</p>
|
<p>El voluntario acepta participar bajo su propia responsabilidad y asume voluntariamente dichos riesgos, salvo cuando exista dolo o negligencia grave imputable al CRPJ.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="conducta-institucional">
|
<section id="conducta-institucional">
|
||||||
<h2>15. Conducta Institucional</h2>
|
<h2>15. Conducta Institucional</h2>
|
||||||
<p>El voluntario se compromete a mantener una conducta acorde con los principios y valores del Centro.</p>
|
<p>El voluntario se compromete a mantener una conducta acorde con los principios y valores del CRPJ.</p>
|
||||||
<p>Queda prohibido:</p>
|
<p>Queda prohibido:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>realizar actos de violencia física o verbal;</li>
|
<li>realizar actos de violencia física o verbal;</li>
|
||||||
<li>discriminar o acosar a cualquier persona;</li>
|
<li>discriminar o acosar a cualquier persona;</li>
|
||||||
<li>consumir drogas ilegales o presentarse bajo sus efectos;</li>
|
<li>consumir drogas ilegales o presentarse bajo sus efectos;</li>
|
||||||
<li>portar armas sin autorización legal y expresa;</li>
|
<li>portar armas sin autorización legal y expresa;</li>
|
||||||
<li>solicitar donaciones o administrar recursos económicos en nombre del Centro sin autorización escrita;</li>
|
<li>solicitar donaciones o administrar recursos económicos en nombre del CRPJ sin autorización escrita;</li>
|
||||||
<li>utilizar el nombre del Centro para fines personales, políticos o comerciales.</li>
|
<li>utilizar el nombre del CRPJ para fines personales, políticos o comerciales.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="proteccion-menores">
|
<section id="proteccion-menores">
|
||||||
<h2>16. Protección de Menores y Personas Vulnerables</h2>
|
<h2>16. Protección de Menores y Personas Vulnerables</h2>
|
||||||
<p>Cuando las actividades involucren menores de edad o personas en situación de vulnerabilidad, el voluntario deberá cumplir estrictamente los protocolos de protección establecidos por el Centro y la legislación aplicable.</p>
|
<p>Cuando las actividades involucren menores de edad o personas en situación de vulnerabilidad, el voluntario deberá cumplir estrictamente los protocolos de protección establecidos por el CRPJ y la legislación aplicable.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="conflicto-intereses">
|
<section id="conflicto-intereses">
|
||||||
<h2>17. Conflicto de Intereses</h2>
|
<h2>17. Conflicto de Intereses</h2>
|
||||||
<p>El voluntario deberá informar cualquier situación personal, profesional, económica o familiar que pudiera generar un conflicto de interés con las actividades del Centro.</p>
|
<p>El voluntario deberá informar cualquier situación personal, profesional, económica o familiar que pudiera generar un conflicto de interés con las actividades del CRPJ.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="cumplimiento-normativo">
|
<section id="cumplimiento-normativo">
|
||||||
|
|
@ -128,24 +128,24 @@
|
||||||
|
|
||||||
<section id="uso-imagen-institucional">
|
<section id="uso-imagen-institucional">
|
||||||
<h2>19. Uso del Nombre e Imagen Institucional</h2>
|
<h2>19. Uso del Nombre e Imagen Institucional</h2>
|
||||||
<p>El nombre, logotipo, marcas, imagen corporativa y demás signos distintivos del Centro únicamente podrán utilizarse con autorización previa y escrita.</p>
|
<p>El nombre, logotipo, marcas, imagen corporativa y demás signos distintivos del CRPJ únicamente podrán utilizarse con autorización previa y escrita.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="redes-sociales">
|
<section id="redes-sociales">
|
||||||
<h2>20. Redes Sociales y Comunicaciones</h2>
|
<h2>20. Redes Sociales y Comunicaciones</h2>
|
||||||
<p>El voluntario no podrá emitir declaraciones públicas, entrevistas, comunicados o publicaciones en representación del Centro sin autorización previa.</p>
|
<p>El voluntario no podrá emitir declaraciones públicas, entrevistas, comunicados o publicaciones en representación del CRPJ sin autorización previa.</p>
|
||||||
<p>Asimismo, se compromete a utilizar responsablemente las redes sociales evitando publicaciones que puedan afectar la imagen institucional.</p>
|
<p>Asimismo, se compromete a utilizar responsablemente las redes sociales evitando publicaciones que puedan afectar la imagen institucional.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="donaciones">
|
<section id="donaciones">
|
||||||
<h2>21. Donaciones</h2>
|
<h2>21. Donaciones</h2>
|
||||||
<p>La condición de voluntario no otorga derecho alguno sobre los bienes, recursos, proyectos o donaciones administrados por el Centro.</p>
|
<p>La condición de voluntario no otorga derecho alguno sobre los bienes, recursos, proyectos o donaciones administrados por el CRPJ.</p>
|
||||||
<p>Toda campaña de recaudación de fondos deberá contar con autorización previa y escrita.</p>
|
<p>Toda campaña de recaudación de fondos deberá contar con autorización previa y escrita.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="fuerza-mayor">
|
<section id="fuerza-mayor">
|
||||||
<h2>22. Fuerza Mayor</h2>
|
<h2>22. Fuerza Mayor</h2>
|
||||||
<p>El Centro podrá suspender, modificar o cancelar cualquier actividad debido a causas de fuerza mayor, razones de seguridad, conflictos armados, emergencias sanitarias, desastres naturales o cualquier otra circunstancia fuera de su control, sin que ello genere responsabilidad alguna.</p>
|
<p>El CRPJ podrá suspender, modificar o cancelar cualquier actividad debido a causas de fuerza mayor, razones de seguridad, conflictos armados, emergencias sanitarias, desastres naturales o cualquier otra circunstancia fuera de su control, sin que ello genere responsabilidad alguna.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="legislacion-jurisdiccion">
|
<section id="legislacion-jurisdiccion">
|
||||||
|
|
@ -163,16 +163,16 @@
|
||||||
<li>Promover una cultura de paz, justicia y solidaridad.</li>
|
<li>Promover una cultura de paz, justicia y solidaridad.</li>
|
||||||
<li>Mantener absoluta confidencialidad.</li>
|
<li>Mantener absoluta confidencialidad.</li>
|
||||||
<li>Evitar conflictos de interés.</li>
|
<li>Evitar conflictos de interés.</li>
|
||||||
<li>Representar al Centro con respeto y profesionalismo.</li>
|
<li>Representar al CRPJ con respeto y profesionalismo.</li>
|
||||||
<li>Cumplir la legislación aplicable y las políticas institucionales.</li>
|
<li>Cumplir la legislación aplicable y las políticas institucionales.</li>
|
||||||
<li>Proteger la reputación y los valores del Centro.</li>
|
<li>Proteger la reputación y los valores del CRPJ.</li>
|
||||||
<li>Actuar siempre con espíritu de servicio.</li>
|
<li>Actuar siempre con espíritu de servicio.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="politica-privacidad">
|
<section id="politica-privacidad">
|
||||||
<h2>Política de Privacidad y Tratamiento de Datos Personales</h2>
|
<h2>Política de Privacidad y Tratamiento de Datos Personales</h2>
|
||||||
<p>El Centro reconoce la importancia de proteger la privacidad de sus voluntarios y se compromete a tratar toda información personal conforme a la legislación aplicable.</p>
|
<p>El CRPJ reconoce la importancia de proteger la privacidad de sus voluntarios y se compromete a tratar toda información personal conforme a la legislación aplicable.</p>
|
||||||
<p>Los datos personales serán utilizados exclusivamente para:</p>
|
<p>Los datos personales serán utilizados exclusivamente para:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Administración del programa de voluntariado.</li>
|
<li>Administración del programa de voluntariado.</li>
|
||||||
|
|
@ -182,6 +182,6 @@
|
||||||
<li>Protección y seguridad de los participantes.</li>
|
<li>Protección y seguridad de los participantes.</li>
|
||||||
<li>Elaboración de estadísticas e informes institucionales.</li>
|
<li>Elaboración de estadísticas e informes institucionales.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>El Centro adoptará medidas técnicas, administrativas y organizativas razonables para proteger la información personal contra pérdida, acceso no autorizado, alteración, divulgación o uso indebido.</p>
|
<p>El CRPJ adoptará medidas técnicas, administrativas y organizativas razonables para proteger la información personal contra pérdida, acceso no autorizado, alteración, divulgación o uso indebido.</p>
|
||||||
<p>Los voluntarios podrán ejercer los derechos que les otorgue la legislación aplicable respecto del acceso, rectificación, actualización o eliminación de sus datos personales.</p>
|
<p>Los voluntarios podrán ejercer los derechos que les otorgue la legislación aplicable respecto del acceso, rectificación, actualización o eliminación de sus datos personales.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, reactive, computed, onMounted, watch } from "vue";
|
import { ref, reactive, computed, onMounted, watch } from "vue";
|
||||||
import { Icon } from "@iconify/vue";
|
import { Icon } from "@iconify/vue";
|
||||||
import { createTranslator } from "../../i18n";
|
import { createTranslator, getLocalizedRoute } from "../../i18n";
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
locale: String,
|
locale: String,
|
||||||
|
|
@ -38,9 +38,53 @@ const currentStepData = computed(() => config.value?.steps?.[currentStep.value]
|
||||||
const isFirstStep = computed(() => currentStep.value === 0);
|
const isFirstStep = computed(() => currentStep.value === 0);
|
||||||
const isLastStep = computed(() => currentStep.value === totalSteps.value - 1);
|
const isLastStep = computed(() => currentStep.value === totalSteps.value - 1);
|
||||||
|
|
||||||
|
const termsUrl = computed(() => {
|
||||||
|
const slug = getLocalizedRoute("terminos", props.locale);
|
||||||
|
return `/${props.locale}/${slug}`;
|
||||||
|
});
|
||||||
|
|
||||||
|
const fieldHelp = (key) => {
|
||||||
|
const k = "form." + key + "_help";
|
||||||
|
const v = tl(k);
|
||||||
|
return v !== k ? v : "";
|
||||||
|
};
|
||||||
|
|
||||||
const stepErrors = reactive({});
|
const stepErrors = reactive({});
|
||||||
const formatErrors = reactive({});
|
const formatErrors = reactive({});
|
||||||
const phoneParts = reactive({});
|
const phoneParts = reactive({});
|
||||||
|
const triedToProceed = ref(false);
|
||||||
|
|
||||||
|
const remainingRequired = computed(() => {
|
||||||
|
const step = config.value?.steps?.[currentStep.value];
|
||||||
|
if (!step) return 0;
|
||||||
|
let count = 0;
|
||||||
|
step.fields.forEach((field) => {
|
||||||
|
if (field.showWhen) {
|
||||||
|
const sv = formData[field.showWhen.field];
|
||||||
|
const sf = findField(field.showWhen.field);
|
||||||
|
const met = sf?.type === "checkbox"
|
||||||
|
? Array.isArray(sv) && sv.includes(field.showWhen.value)
|
||||||
|
: sv === field.showWhen.value;
|
||||||
|
if (!met) return;
|
||||||
|
}
|
||||||
|
if (!field.required) return;
|
||||||
|
const val = formData[field.key];
|
||||||
|
if (field.type === "checkbox") {
|
||||||
|
const ro = field.options?.filter(o => o.required)?.map(o => o.value) || [];
|
||||||
|
if (ro.length > 0) {
|
||||||
|
if (!ro.every(v => val?.includes(v))) count++;
|
||||||
|
} else if (!val || val.length === 0) {
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
} else if (field.type === "phone_country") {
|
||||||
|
const p = phoneParts[field.key];
|
||||||
|
if (!p || !p.code || !p.number) count++;
|
||||||
|
} else if (!val || (typeof val === "string" && val.trim() === "")) {
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return count;
|
||||||
|
});
|
||||||
|
|
||||||
const fetchConfig = async () => {
|
const fetchConfig = async () => {
|
||||||
isSuccess.value = false;
|
isSuccess.value = false;
|
||||||
|
|
@ -199,6 +243,7 @@ const validateStep = (stepIndex) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const nextStep = () => {
|
const nextStep = () => {
|
||||||
|
triedToProceed.value = true;
|
||||||
if (!validateStep(currentStep.value)) return;
|
if (!validateStep(currentStep.value)) return;
|
||||||
if (currentStep.value < totalSteps.value - 1) {
|
if (currentStep.value < totalSteps.value - 1) {
|
||||||
currentStep.value++;
|
currentStep.value++;
|
||||||
|
|
@ -476,6 +521,7 @@ const getFieldIcon = (field) => {
|
||||||
if (k === "fecha_nacimiento") return "ph:calendar";
|
if (k === "fecha_nacimiento") return "ph:calendar";
|
||||||
if (k === "nacionalidad" || k === "pais") return "ph:flag";
|
if (k === "nacionalidad" || k === "pais") return "ph:flag";
|
||||||
if (k === "direccion_completa") return "ph:house";
|
if (k === "direccion_completa") return "ph:house";
|
||||||
|
if (k === "direccion_postal") return "ph:map-pin";
|
||||||
if (k === "ciudad") return "ph:city";
|
if (k === "ciudad") return "ph:city";
|
||||||
if (k === "estado" || k === "postal") return "ph:map-pin";
|
if (k === "estado" || k === "postal") return "ph:map-pin";
|
||||||
if (k === "telefono" || k === "whatsapp" || k === "emergencia_telefono") return "ph:phone";
|
if (k === "telefono" || k === "whatsapp" || k === "emergencia_telefono") return "ph:phone";
|
||||||
|
|
@ -573,9 +619,17 @@ const getFieldInputType = (field) => {
|
||||||
<template v-for="field in currentStepData.fields" :key="field.key">
|
<template v-for="field in currentStepData.fields" :key="field.key">
|
||||||
<div v-if="shouldShow(field)" class="flex flex-col gap-1.5" :class="{ 'md:col-span-2': field.colspan === 2 && currentStepData.column > 1, 'md:col-span-3': field.colspan === 3 && currentStepData.column > 1 }">
|
<div v-if="shouldShow(field)" class="flex flex-col gap-1.5" :class="{ 'md:col-span-2': field.colspan === 2 && currentStepData.column > 1, 'md:col-span-3': field.colspan === 3 && currentStepData.column > 1 }">
|
||||||
|
|
||||||
<span class="text-[#22523F] font-secondary font-medium text-sm leading-tight">
|
<span class="text-[#22523F] font-secondary font-medium text-sm leading-tight inline-flex items-center">
|
||||||
{{ tl(field.label) }}
|
{{ tl(field.label) }}
|
||||||
<span v-if="field.required" class="text-red-500 ml-0.5">*</span>
|
<span v-if="field.required" class="text-red-500 ml-0.5">*</span>
|
||||||
|
<div v-if="fieldHelp(field.key)" class="relative inline-flex group cursor-help ml-1">
|
||||||
|
<Icon icon="ph:question" class="text-gray-400 text-sm" />
|
||||||
|
<div class="absolute bottom-full mb-1 left-1/2 -translate-x-1/2 bg-gray-800 text-white text-xs rounded px-3 py-1.5 opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none z-20 shadow-lg w-64 whitespace-normal text-center leading-normal">
|
||||||
|
<span v-if="field.required" class="text-red-300 block">* {{ tl("form.required") }}</span>
|
||||||
|
<span v-else class="text-gray-300 block">{{ tl("form.optional") }}</span>
|
||||||
|
{{ fieldHelp(field.key) }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<div v-if="field.readonly" class="py-2.5 px-3 bg-gray-100 border border-gray-200 text-[#6B7280] rounded-xl min-h-[2.5rem] flex items-center text-sm">
|
<div v-if="field.readonly" class="py-2.5 px-3 bg-gray-100 border border-gray-200 text-[#6B7280] rounded-xl min-h-[2.5rem] flex items-center text-sm">
|
||||||
|
|
@ -757,7 +811,7 @@ const getFieldInputType = (field) => {
|
||||||
:checked="formData[field.key]?.includes(opt.value)"
|
:checked="formData[field.key]?.includes(opt.value)"
|
||||||
@change="handleCheckboxChange(field.key, opt.value, $event.target.checked)"
|
@change="handleCheckboxChange(field.key, opt.value, $event.target.checked)"
|
||||||
/>
|
/>
|
||||||
<span class="text-[#1a1a1a] text-sm">{{ tl(opt.label) }}</span>
|
<span class="text-[#1a1a1a] text-sm" v-html="tl(opt.label, { terms_url: termsUrl })"></span>
|
||||||
</label>
|
</label>
|
||||||
<div
|
<div
|
||||||
v-if="formData[field.key]?.includes(opt.value) && field.levels"
|
v-if="formData[field.key]?.includes(opt.value) && field.levels"
|
||||||
|
|
@ -788,7 +842,7 @@ const getFieldInputType = (field) => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p
|
<p
|
||||||
v-if="getFieldError(field.key) && (field.type !== 'checkbox' || currentStep > 0)"
|
v-if="getFieldError(field.key) && (field.type !== 'checkbox' || triedToProceed)"
|
||||||
class="text-xs text-red-500 flex items-center gap-1 mt-0.5"
|
class="text-xs text-red-500 flex items-center gap-1 mt-0.5"
|
||||||
>
|
>
|
||||||
<Icon icon="ph:warning-circle" class="text-sm shrink-0" />
|
<Icon icon="ph:warning-circle" class="text-sm shrink-0" />
|
||||||
|
|
@ -862,6 +916,12 @@ const getFieldInputType = (field) => {
|
||||||
>
|
>
|
||||||
{{ tl("form.reglamento_tooltip") }}
|
{{ tl("form.reglamento_tooltip") }}
|
||||||
</div>
|
</div>
|
||||||
|
<div
|
||||||
|
v-else-if="remainingRequired > 0"
|
||||||
|
class="absolute bottom-full mb-1 sm:mb-2 left-1/2 -translate-x-1/2 whitespace-nowrap bg-gray-800 text-white text-xs rounded px-3 py-1.5 opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none z-10 shadow-lg"
|
||||||
|
>
|
||||||
|
{{ tl(remainingRequired === 1 ? "form.remaining_required_one" : "form.remaining_required", { count: remainingRequired }) }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button
|
<button
|
||||||
|
|
|
||||||
|
|
@ -221,7 +221,8 @@
|
||||||
"form.sexo.m": "Masculino",
|
"form.sexo.m": "Masculino",
|
||||||
"form.sexo.f": "Femenino",
|
"form.sexo.f": "Femenino",
|
||||||
"form.sexo.o": "Otro",
|
"form.sexo.o": "Otro",
|
||||||
"form.direccion": "Dirección Completa",
|
"form.direccion": "Dirección Física",
|
||||||
|
"form.direccion_postal": "Dirección Postal",
|
||||||
"form.ciudad": "Ciudad",
|
"form.ciudad": "Ciudad",
|
||||||
"form.estado": "Estado / Provincia",
|
"form.estado": "Estado / Provincia",
|
||||||
"form.pais": "País",
|
"form.pais": "País",
|
||||||
|
|
@ -229,12 +230,12 @@
|
||||||
"form.mobile": "Teléfono Móvil",
|
"form.mobile": "Teléfono Móvil",
|
||||||
"form.whatsapp": "WhatsApp",
|
"form.whatsapp": "WhatsApp",
|
||||||
"form.aceptacion_reglamento": "Declaración de Aceptación",
|
"form.aceptacion_reglamento": "Declaración de Aceptación",
|
||||||
"form.aceptacion.leido": "He leído y acepto el presente Reglamento",
|
"form.aceptacion.leido": "He leído y acepto el presente Reglamento.",
|
||||||
"form.aceptacion.codigo_etica": "Acepto el Código de Ética del Centro",
|
"form.aceptacion.codigo_etica": "Acepto el Código de Ética del Centro",
|
||||||
"form.aceptacion.datos": "Autorizo el tratamiento de mis datos personales conforme a la Política de Privacidad",
|
"form.aceptacion.datos": "Autorizo el tratamiento de mis datos personales conforme a la Política de Privacidad.",
|
||||||
"form.aceptacion.voluntaria": "Confirmo que mi participación es completamente voluntaria y que no existe relación laboral, contractual o de representación con el Centro",
|
"form.aceptacion.voluntaria": "Confirmo que mi participación es completamente voluntaria y que no existe relación laboral, contractual o de representación con el Centro",
|
||||||
"form.aceptacion.verdadera": "Confirmo que toda la información proporcionada es verdadera",
|
"form.aceptacion.verdadera": "Confirmo que toda la información proporcionada es verdadera.",
|
||||||
"form.aceptacion.firma_validez": "Acepto que mi consentimiento electrónico tendrá la misma validez jurídica que una firma manuscrita, conforme a la legislación aplicable",
|
"form.aceptacion.firma_validez": "Acepto que mi consentimiento electrónico tendrá la misma validez jurídica que una firma manuscrita, conforme a la legislación aplicable.",
|
||||||
"form.reglamento_firma": "Firma electrónica",
|
"form.reglamento_firma": "Firma electrónica",
|
||||||
"form.reglamento_firma_placeholder": "Nombre completo como firma",
|
"form.reglamento_firma_placeholder": "Nombre completo como firma",
|
||||||
"form.leer_reglamento": "Leer Reglamento Completo",
|
"form.leer_reglamento": "Leer Reglamento Completo",
|
||||||
|
|
@ -308,15 +309,18 @@
|
||||||
"form.step8": "Declaración del Voluntario",
|
"form.step8": "Declaración del Voluntario",
|
||||||
"form.declaracion_voluntario": "Declaro bajo protesta de decir verdad que:",
|
"form.declaracion_voluntario": "Declaro bajo protesta de decir verdad que:",
|
||||||
"form.declaracion.verdadera": "Toda la información proporcionada en esta solicitud es verdadera y completa.",
|
"form.declaracion.verdadera": "Toda la información proporcionada en esta solicitud es verdadera y completa.",
|
||||||
"form.declaracion.acepto_reglamento": "He leído y acepto el Reglamento y las Condiciones del Programa de Voluntariado del Centro del Reino de Paz y Justicia.",
|
"form.declaracion.acepto_reglamento": "He leído y acepto el Reglamento y las <a href=\"{terms_url}\" target=\"_blank\" class=\"underline\">Condiciones del Programa de Voluntariado</a> del Centro del Reino de Paz y Justicia.",
|
||||||
"form.declaracion.compromiso_etica": "Me comprometo a cumplir el Código de Ética, las políticas institucionales y las instrucciones de los responsables del Centro.",
|
"form.declaracion.compromiso_etica": "Me comprometo a cumplir el Código de Ética, las políticas institucionales y las instrucciones de los responsables del Centro",
|
||||||
"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.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.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.declaracion.voluntaria": "Entiendo que mi participación es completamente voluntaria y que no genera relación laboral alguna con el Centro",
|
||||||
"form.confirmar_nombre": "Nombres",
|
"form.confirmar_nombre": "Nombres",
|
||||||
"form.confirmar_firma": "Firma electrónica",
|
"form.confirmar_firma": "Firma electrónica",
|
||||||
"form.confirmacion": "Confirmación final",
|
"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.",
|
"form.confirmacion_label": "Confirmo que los datos personales y la firma mostrados arriba son correctos y corresponden a mi persona.",
|
||||||
|
"terminos.title": "Términos y Condiciones",
|
||||||
|
"terminos.text": "Reglamento General del Programa de Voluntariado",
|
||||||
|
|
||||||
"form.submit": "Enviar Formulario",
|
"form.submit": "Enviar Formulario",
|
||||||
"form.next": "Siguiente",
|
"form.next": "Siguiente",
|
||||||
"form.back": "Anterior",
|
"form.back": "Anterior",
|
||||||
|
|
@ -324,6 +328,9 @@
|
||||||
"form.success": "¡Enviado con éxito!",
|
"form.success": "¡Enviado con éxito!",
|
||||||
"form.error": "Error al enviar",
|
"form.error": "Error al enviar",
|
||||||
"form.required": "Este campo es obligatorio",
|
"form.required": "Este campo es obligatorio",
|
||||||
|
"form.optional": "Este campo es opcional",
|
||||||
|
"form.remaining_required_one": "Falta 1 campo obligatorio por llenar",
|
||||||
|
"form.remaining_required": "Faltan {count} campos obligatorios por llenar",
|
||||||
"form.phone_invalid": "Solo se permiten números",
|
"form.phone_invalid": "Solo se permiten números",
|
||||||
"form.phone_number_invalid": "Número inválido (mín. 7 dígitos, máx. 15)",
|
"form.phone_number_invalid": "Número inválido (mín. 7 dígitos, máx. 15)",
|
||||||
"form.phone_code_select": "Código",
|
"form.phone_code_select": "Código",
|
||||||
|
|
@ -335,5 +342,10 @@
|
||||||
"form.success_title": "¡Registro completado con éxito!",
|
"form.success_title": "¡Registro completado con éxito!",
|
||||||
"form.success_info": "Tu solicitud de inscripción como voluntario ha sido recibida correctamente.",
|
"form.success_info": "Tu solicitud de inscripción como voluntario ha sido recibida correctamente.",
|
||||||
"form.success_detail": "Para más información, puedes comunicarte con nosotros a través de los canales oficiales del Centro del Reino de Paz y Justicia. Agradecemos tu interés y compromiso.",
|
"form.success_detail": "Para más información, puedes comunicarte con nosotros a través de los canales oficiales del Centro del Reino de Paz y Justicia. Agradecemos tu interés y compromiso.",
|
||||||
"form.back_home": "Volver al inicio"
|
"form.back_home": "Volver al inicio",
|
||||||
|
|
||||||
|
"form.documentos_help": "Ingrese el número de un documento oficial de identidad emitido por su país (por ejemplo: cédula de identidad, DNI, tarjeta de identidad o pasaporte, según corresponda).",
|
||||||
|
"form.lugar_trabajo_actual_help": "Indicá la ciudad, provincia y país donde se encuentra su lugar de trabajo actual.",
|
||||||
|
"form.nacionalidad_help": "Indicá su país de nacimiento.",
|
||||||
|
"form.nivel_academico_help": "Indicá su nivel académico alcanzado (ej: secundario, universitario, posgrado)."
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,18 @@ export const routeTranslations = {
|
||||||
ru: "форма",
|
ru: "форма",
|
||||||
rw: "formulaire",
|
rw: "formulaire",
|
||||||
kr: "fòm",
|
kr: "fòm",
|
||||||
}
|
},
|
||||||
|
terminos: {
|
||||||
|
es: "terminos",
|
||||||
|
en: "terms",
|
||||||
|
fr: "termes",
|
||||||
|
he: "תנאים",
|
||||||
|
uk: "terminos",
|
||||||
|
pt: "termos",
|
||||||
|
ru: "условия",
|
||||||
|
rw: "terminos",
|
||||||
|
kr: "tèm",
|
||||||
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export function getRouteKeyFromSlug(slug: string): keyof typeof routeTranslations {
|
export function getRouteKeyFromSlug(slug: string): keyof typeof routeTranslations {
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,8 @@ if (routeKey === "formulario") {
|
||||||
if (Astro.currentLocale !== "es") {
|
if (Astro.currentLocale !== "es") {
|
||||||
return Astro.redirect(`/${Astro.currentLocale}/`);
|
return Astro.redirect(`/${Astro.currentLocale}/`);
|
||||||
}
|
}
|
||||||
|
} else if (routeKey === "terminos") {
|
||||||
|
// rendered client-side
|
||||||
} else {
|
} else {
|
||||||
var items = await getCollection(routeKey, (post)=>{
|
var items = await getCollection(routeKey, (post)=>{
|
||||||
const currentLocale = Astro.currentLocale;
|
const currentLocale = Astro.currentLocale;
|
||||||
|
|
@ -42,7 +44,7 @@ if (routeKey === "formulario") {
|
||||||
}
|
}
|
||||||
---
|
---
|
||||||
|
|
||||||
<MainLayout title={routeKey === "formulario" ? tl("form.page_title") : undefined}>
|
<MainLayout title={routeKey === "formulario" ? tl("form.page_title") : routeKey === "terminos" ? tl("terminos.title") : undefined}>
|
||||||
{routeKey === "formulario" && (
|
{routeKey === "formulario" && (
|
||||||
<div class="pt-16 relative container mx-auto">
|
<div class="pt-16 relative container mx-auto">
|
||||||
<Header />
|
<Header />
|
||||||
|
|
@ -65,7 +67,20 @@ if (routeKey === "formulario") {
|
||||||
</main>
|
</main>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{routeKey !== "formulario" && (
|
{routeKey === "terminos" && (
|
||||||
|
<main class="min-h-screen py-16 px-4">
|
||||||
|
<div class="md:container mx-auto">
|
||||||
|
<h1 class="text-3xl lg:text-4xl font-bold font-secondary text-[#EBE6D2] text-center mb-4 md:mb-9">
|
||||||
|
{tl("terminos.title")}
|
||||||
|
</h1>
|
||||||
|
<div id="reglamento-content" class="reglamento-content bg-white p-6 md:p-10 max-w-4xl mx-auto" data-locale={Astro.currentLocale}>
|
||||||
|
<p class="text-gray-500 text-center">{tl("terminos.text")}...</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
)}
|
||||||
|
|
||||||
|
{routeKey !== "formulario" && routeKey !== "terminos" && (
|
||||||
<div class="container mx-auto mt-4">
|
<div class="container mx-auto mt-4">
|
||||||
<div class="flex flex-col lg:w-1/2 items-center mx-auto py-8">
|
<div class="flex flex-col lg:w-1/2 items-center mx-auto py-8">
|
||||||
<h1 class="text-white text-2xl uppercase font-bold text-center mb-4 font-primary md:mt-20 mt-10">{tl(routeKey + ".title")}</h1>
|
<h1 class="text-white text-2xl uppercase font-bold text-center mb-4 font-primary md:mt-20 mt-10">{tl(routeKey + ".title")}</h1>
|
||||||
|
|
@ -197,6 +212,24 @@ if (routeKey === "formulario") {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const reglamentoContainer = document.getElementById('reglamento-content');
|
||||||
|
if (reglamentoContainer) {
|
||||||
|
const locale = reglamentoContainer.dataset.locale || 'es';
|
||||||
|
const locales = [locale, 'es'];
|
||||||
|
(async () => {
|
||||||
|
for (const l of locales) {
|
||||||
|
try {
|
||||||
|
const res = await fetch(`/reglamento/${l}.html`);
|
||||||
|
if (res.ok) {
|
||||||
|
reglamentoContainer.innerHTML = await res.text();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} catch {}
|
||||||
|
}
|
||||||
|
reglamentoContainer.innerHTML = '<p class="text-red-500 text-center">Error al cargar el reglamento</p>';
|
||||||
|
})();
|
||||||
|
}
|
||||||
|
|
||||||
document.addEventListener('astro:page-load', () => {
|
document.addEventListener('astro:page-load', () => {
|
||||||
initTags();
|
initTags();
|
||||||
initYearFilter();
|
initYearFilter();
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ const COLUMNS = [
|
||||||
"nacionalidad",
|
"nacionalidad",
|
||||||
"sexo",
|
"sexo",
|
||||||
"direccion_completa",
|
"direccion_completa",
|
||||||
|
"direccion_postal",
|
||||||
"ciudad",
|
"ciudad",
|
||||||
"estado",
|
"estado",
|
||||||
"pais",
|
"pais",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue