web-next: rediseño de security-token, recover, vote-points + rename-guild

- /security-token: diseño completo del original (info + advertencia + NOTA 7 días),
  fecha en formato HH:MM:SS DD-MM-YYYY, botón "Token enviado", enlace a /recover.
- /recover: 4 opciones (contraseña por usuario, nombre de cuenta, token de seguridad
  y enlace de activación por correo); recuperación de token nueva; Turnstile por envío.
- /vote-points: caja de info con las 7 secciones Q&A + panel "Sitios de votación" con
  tarjetas inline-div (imagen, PV, último voto), botón refrescar; abre el sitio y acredita
  PV al volver. lib/vote.ts + getVoteSitesForAccount.
- /rename-guild: renombra una hermandad de la que la cuenta es Maestro por 1000 PD +
  token de seguridad; SOAP .guild rename con comillas; reembolsa los PD si SOAP falla.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-14 10:06:49 +00:00
parent 66d056c04b
commit b9803adeb9
15 changed files with 778 additions and 116 deletions
+45 -10
View File
@@ -198,18 +198,31 @@
"title": "Activación de cuenta"
},
"Recover": {
"title": "Recuperar cuenta",
"title": "Recuperar información de cuenta",
"infoTitle": "Información",
"reqTitle": "Solicitud de información",
"prompt": "Escoge la opción acorde a la información que quieres recuperar",
"type": "¿Qué quieres recuperar?",
"typePassword": "Contraseña",
"typeAccountName": "Nombre de cuenta",
"typeSecurityToken": "Token de seguridad",
"typeActivation": "Enlace de activación",
"email": "Correo electrónico de Gmail",
"username": "Nombre de usuario",
"email": "Correo electrónico",
"submit": "Solicitar",
"sending": "Enviando…",
"success": "Si existe una cuenta con ese correo, te hemos enviado la información.",
"sending": "Solicitando datos",
"sent": "Datos enviados",
"success": "Si existe una cuenta con esos datos, te hemos enviado la información.",
"invalidEmail": "Introduce un correo de Gmail válido.",
"invalidUsername": "Introduce un nombre de usuario válido.",
"genericError": "Algo ha salido mal. Inténtalo más tarde.",
"captchaFailed": "Verificación anti-bots fallida. Reintenta."
"captchaFailed": "Verificación anti-bots fallida. Reintenta.",
"infoSections": [
{ "h": "Si has olvidado la contraseña de la cuenta:", "lines": ["- Selecciona la opción 'Contraseña'.", "- Escribe Nombre de usuario.", "- Un correo será enviado con un enlace para generar una contraseña nueva."] },
{ "h": "Si has olvidado el nombre de la cuenta:", "lines": ["- Selecciona la opción 'Nombre de cuenta'.", "- Escribe el correo electrónico.", "- Un correo será enviado con todas las cuentas ligadas al correo."] },
{ "h": "Si has olvidado el Token de seguridad:", "lines": ["- Selecciona la opción 'Token de seguridad'.", "- Escribe el correo electrónico.", "- Un correo será enviado con el Token de seguridad."] },
{ "h": "Si no has recibido el enlace de activación:", "lines": ["- Selecciona la opción 'Enlace de activación'.", "- Escribe el correo electrónico.", "- Un correo será enviado con el enlace de activación."] }
]
},
"Reset": {
"title": "Restablecer contraseña",
@@ -289,11 +302,18 @@
},
"SecurityToken": {
"title": "Token de seguridad",
"info": "El token de seguridad es un código de 6 caracteres (sensible a mayúsculas) que se solicita para acciones importantes de tu cuenta. Puedes solicitar uno nuevo cada 7 días.",
"lastRequest": "Fecha de solicitud",
"info1": "El <b>Token de seguridad</b> es un código de 6 dígitos (sensible a mayúsculas y minúsculas), que añade seguridad a ciertas opciones en tu panel de cuenta en la página web.",
"info2": "El mismo será solicitado para acciones importantes de la cuenta.",
"info3": "Para obtenerlo, es necesario solicitarlo haciendo click en el botón debajo.",
"info4": "Al hacer click, un mensaje será enviado al correo de la cuenta conteniendo el Token de Seguridad.",
"warning": "Es importante que conserves el Token de seguridad en un lugar seguro y no lo compartas con otros usuarios.",
"note": "Puedes solicitar un nuevo Token de seguridad una vez cada 7 días.",
"requestDateLabel": "Fecha de solicitud de Token de seguridad:",
"never": "Sin solicitar",
"request": "Solicitar token",
"requesting": "Solicitando",
"requesting": "Solicitando token",
"sent": "Token enviado",
"forgot": "He olvidado el Token de seguridad",
"success": "Se ha enviado el token de seguridad a tu correo.",
"cooldown": "Solo puedes solicitar un token cada 7 días.",
"noEmail": "Añade un correo a tu cuenta antes de solicitar un token.",
@@ -501,15 +521,30 @@
"Vote": {
"title": "Votar por nosotros",
"info": "Vota por {server} en las siguientes páginas y recibe PV. Puedes votar en cada sitio cada 12 horas.",
"sitesTitle": "Sitios de votación",
"note": "Nota: algunos sitios pueden demorar unos minutos en acreditar el voto.",
"refresh": "Refrescar",
"vote": "Votar",
"voting": "Votando",
"voting": "Votando",
"voted": "Votado",
"pv": "PV",
"lastVote": "Último voto: {date}",
"neverVoted": "Aún no has votado aquí.",
"success": "¡Gracias por votar en {site}! Se han acreditado {points} PV.",
"cooldown": "Debes esperar {hours}h {minutes}m para volver a votar en este sitio.",
"siteNotFound": "Sitio de votación no encontrado.",
"genericError": "Algo ha salido mal. Inténtalo más tarde.",
"noSites": "No hay sitios de votación configurados todavía.",
"loginToVote": "Inicia sesión para votar."
"loginToVote": "Inicia sesión para votar.",
"infoSections": [
{ "h": "¿Qué son las votaciones?", "lines": ["Una votación es la acción de darle un voto al servidor en una página web que ofrezca listas de tops.", "Como recompensa a realizar una votación por {server}, se otorgan PV."] },
{ "h": "¿Qué son los PV?", "lines": ["Brindamos a nuestros usuarios la oportunidad de obtener niveles con beneficios exclusivos en nuestra comunidad en línea. Estos beneficios incluyen acceso a herramientas especiales, contenido exclusivo y mejoras significativas en la experiencia de nuestro sitio web. Al realizar una votación, los usuarios reciben PV, una unidad de reconocimiento interna que refleja su compromiso y progreso en nuestra plataforma. Los PV permiten alcanzar nuevos niveles y desbloquear recompensas exclusivas. Destacamos que los PV son una forma única de valorar y premiar la participación activa de nuestros usuarios en la comunidad."] },
{ "h": "¿Cómo se puede votar?", "lines": ["Para votar por {server}, se debe hacer click en los botones que aparecen debajo, y cada uno de ellos redirigirá a la página web del top correspondiente.", "Una vez allí, deberás darle un voto al servidor y así recibirás tus PV."] },
{ "h": "¿Cuántos PV se reciben por cada voto?", "lines": ["En la lista inferior, cada sitio indica cuántos PV otorgará si se realiza una votación exitosa."] },
{ "h": "¿Cada cuánto se puede votar?", "lines": ["Sólo se puede votar por cada sitio cada 12 horas.", "El recuadro informa sobre la última vez que has votado en cada sitio."] },
{ "h": "¿Por qué el voto no cuenta en la web?", "lines": ["Usamos el sistema de postback por lo que cada sitio web de votos nos envía una respuesta cada vez que un usuario vota por nuestro servidor.", "Una vez que la respuesta es analizada en nuestra web, se sumarán los PV correspondientes siempre que el usuario haya votado correctamente.", "Cada sitio de votación tiene, además, sus propias restricciones como sólo permitir un voto por IP por lo cual puede suceder que el voto no cuente si se usan varias cuentas para votar en el mismo día."] },
{ "h": "¿Tienes dudas o problemas para votar?", "lines": ["Si a pesar de leer este instructivo aún tienes dudas, el equipo de {server} podrá asesorarte en cualquier momento. Puedes colocar un ticket solicitando ayuda para votar."] }
]
},
"Common": {
"prev": "Anterior",