Max ce1844e521
feat(webapp): several group and personal invitation links (#8504)
* invite codes refactor

typo

* lint fixes

* remove duplicate initeCodes on User

* fix typo

* clean permissionMiddleware

* dummy permissions

* separate validateInviteCode call

* permissions group & user

* test validateInviteCode + adjustments

* more validateInviteCode fixes

* missing test

* generatePersonalInviteCode

* generateGroupInviteCode

* old tests

* lint fixes

* more lint fixes

* fix validateInviteCode

* fix redeemInviteCode, fix signup

* fix all tests

* fix lint

* uniform types in config

* test & fix invalidateInviteCode

* cleanup test

* fix & test redeemInviteCode

* permissions

* fix Group->inviteCodes

* more cleanup

* improve tests

* fix code generation

* cleanup

* order inviteCodes result on User and Group

* lint

* test max invite codes + fix

* better description of collision

* tests: properly define group ids

* reused old group query

* reuse old Groupmembers query

* remove duplicate skip

* update comment

* fix uniqueInviteCode

* fix test

* fix lint

* Get invite codes

* Show invitation data in registration

* Add invitation list to menu (WIP)

* Add mutations, add CreateInvitation, some fixes

* Improve style, fix long comments

* Lock scrolling when popover is open, but prevent layout change

* small fixes

* instant updates

* Introduce config for link limit; add texts, layout changes

* Validate comment length

* Improve layout

* Add message to copied link

* Add invite link section to group settings

* Handle hidden groups

* Add menu entry for group invite links

* Fix locale

* hotfix invite codes

* Add copy messages

* More styling (WIP)

* Design update

* Don't forget user state

* Localize placeholder

* Add locale

* Instant updates for group invites

* fix registration with invite code

* Fix text overflow

* Fix instant updates

* Overhaul styles, add locales, add heading

* Add test and snapshot for CreateInvitation

* Improve accessability; add invitation test

* Add tests for InvitationList

* Fix locales

* Round plus button

* Fix tests

* Fix tests

* fix locales

* fix linting

* Don't show name of hidden group in invite message

* Add more tests

* Update webapp/locales/de.json

Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>

* Update webapp/locales/de.json

Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>

---------

Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-10 08:25:03 +00:00

1210 lines
37 KiB
JSON

{
"actions": {
"cancel": "Cancelar",
"create": "Crear",
"delete": "Borrar",
"edit": "Edite",
"loading": "cargamento",
"loadMore": "cargar más",
"save": "Guardar",
"saveCategories": null
},
"admin": {
"badges": {
"description": null,
"noBadges": null,
"revokeTrophy": {
"error": null,
"success": null
},
"revokeVerification": {
"error": null,
"success": null
},
"rewardTrophy": {
"error": null,
"success": null
},
"setVerification": {
"error": null,
"success": null
},
"title": null,
"trophyBadges": null,
"verificationBadges": null
},
"categories": {
"categoryName": "Nombre",
"name": "Categorías",
"postCount": "Contribuciones"
},
"dashboard": {
"comments": "Comentarios",
"follows": "Sigue",
"invites": "Invita",
"name": "Tablero",
"notifications": "Notificaciones",
"organizations": "Organizaciones",
"posts": "Contribuciones",
"projects": "Proyectos",
"shouts": "Recomendaciones",
"users": "Usuarios"
},
"donations": {
"goal": "Donaciones mensuales necesarias",
"name": "Información de donaciones",
"progress": "Donaciones recogidas hasta ahora",
"showDonationsCheckboxLabel": null,
"successfulUpdate": "¡Información de donaciones actualizada con éxito!"
},
"hashtags": {
"name": "Hashtags",
"nameOfHashtag": "Nombre",
"number": "No.",
"tagCount": "Contribuciones",
"tagCountUnique": "Usuarios"
},
"invites": {
"description": "Las invitaciones son una manera maravillosa de tener a sus amigos en su red ...",
"name": "Invitar usuarios",
"title": "Invitar personas"
},
"name": "Admin",
"notifications": {
"name": "Notificaciones"
},
"organizations": {
"name": "Organizaciones"
},
"pages": {
"name": "Páginas"
},
"settings": {
"name": "Configuración"
},
"users": {
"empty": "No se han encontrado usuarios",
"form": {
"placeholder": "correo electrónico, nombre o descripción"
},
"name": "Usuarios",
"roleChanged": null,
"table": {
"columns": {
"badges": null,
"createdAt": "Creado el",
"email": "Correo electrónico",
"name": "Nombre",
"number": "No.",
"role": "Rol",
"slug": "Alias"
}
}
}
},
"chat": {
"addRoomHeadline": null,
"cancelSelectMessage": null,
"conversationStarted": null,
"isOnline": null,
"isTyping": null,
"lastSeen": null,
"messageDeleted": null,
"messagesEmpty": null,
"newMessages": null,
"page": {
"headline": null
},
"roomEmpty": null,
"roomsEmpty": null,
"search": "Filtrar salas de chat",
"typeMessage": null,
"userProfileButton": {
"label": null,
"tooltip": null
}
},
"client-only": {
"loading": null
},
"code-of-conduct": {
"subheader": "para la red social de {ORGANIZATION_NAME}"
},
"comment": {
"content": {
"unavailable-placeholder": "... este comentario ya no está disponible"
},
"edited": "editado",
"menu": {
"delete": "Borrar comentario",
"edit": "Editar comentario"
},
"show": {
"less": "mostrar menos",
"more": "mostrar más"
}
},
"common": {
"category": "Categoría ::: Categorías",
"comment": "Comentario ::: Comentarios",
"letsTalk": "Hablemos",
"loading": "cargando",
"loadMore": "cargar más",
"name": "Nombre",
"organization": "Organización ::: Organizaciones",
"post": "Mensaje ::: Mensajes",
"project": "Proyecto ::: Proyectos",
"reportContent": "Informe",
"shout": "Grito ::: Gritos",
"tag": "Etiqueta ::: Etiquetas",
"takeAction": "Tomar acción",
"user": "Usuario ::: Usuarios",
"validations": {
"categories": "deben seleccionarse al menos una y como máximo tres categorías",
"email": "debe ser una dirección de correo electrónico válida",
"eventLocationNameLength": null,
"eventLocationNameNotEmpty": null,
"eventVenueLength": null,
"eventVenueNotEmpty": null,
"url": "debe ser una URL válida"
},
"versus": "Versus"
},
"components": {
"dateTimeRange": {
"hourMinute": null,
"monthDay": null,
"yearMonthDay": null
},
"password-reset": {
"change-password": {
"error": "Error al cambiar la contraseña. ¿Posiblemente un código de seguridad incorrecto?",
"help": "Si tiene algún problema, por favor envíenos un correo electrónico a:",
"success": "El cambio de contraseña ha sido un éxito!"
},
"request": {
"form": {
"description": "Se enviará un correo electrónico de restablecimiento de contraseña a la dirección de correo electrónico especificada.",
"submit": "Solicitar correo electrónico",
"submitted": "Se ha enviado un correo electrónico con más instrucciones a <b>{email}</b>."
},
"title": "Restablecer su contraseña"
}
},
"registration": {
"create-user-account": {
"buttonTitle": null,
"error": "¡No se ha podido crear una cuenta de usuario!",
"help": "¿Tal vez el código de verificación era incorrecto o expiró? Si el problema persiste, por favor envíenos un correo electrónico a:",
"recieveCommunicationAsEmailsEtcConfirmed": null,
"success": "¡Su cuenta de usuario ha sido creada!",
"termsAndCondsEtcConfirmed": null,
"title": "Crear una cuenta de usuario"
},
"email": {
"buttonTitle": {
"resend": null,
"send": null,
"skipResend": null
},
"form": {
"sendEmailAgain": null,
"success": null
},
"title": null
},
"email-display": {
"warningFormat": null,
"warningUndef": null,
"yourEmail": null
},
"email-nonce": {
"buttonTitle": null,
"form": {
"click-next": null,
"description": "Abra su buzón de correo e introduzca el código que le enviamos.",
"next": "Continuar",
"nonce": "Introduzca el código",
"validations": {
"error": null,
"length": "debe tener exactamente {nonceLength} letras",
"success": null
}
},
"title": null
},
"invite-code": {
"buttonTitle": null,
"form": {
"description": null,
"invite-code": null,
"next": null,
"validations": {
"error": null,
"length": null,
"success": null
}
},
"invited-by": null,
"invited-by-and-to": null,
"invited-to-hidden-group": null
},
"no-public-registrstion": {
"title": null
},
"signup": {
"form": {
"data-privacy": "He leido y entendido la declaración de protección de datos.",
"description": "Para empezar, introduzca su dirección de correo electrónico:",
"errors": {
"email-exists": "¡Ya hay una cuenta de usuario con esta dirección de correo electrónico!"
},
"submit": "Crear una cuenta",
"success": "Se ha enviado un correo electrónico con un enlace de confirmación para el registro a <b>{email}</b>.",
"terms-and-condition": "Estoy de acuerdo con los términos de uso."
},
"title": "¡Únete a {APPLICATION_NAME}!",
"unavailable": "Desafortunadamente, el registro público de cuentas de usuario en este servidor actualmente no es posible."
}
}
},
"contribution": {
"amount-clicks": null,
"amount-comments": null,
"amount-shouts": null,
"amount-views": null,
"categories": {
"infoSelectedNoOfMaxCategories": "{chosen} de {max} categorías seleccionadas"
},
"category": {
"description": {
"body-and-excercise": null,
"children": null,
"culture": null,
"economy": null,
"energy": null,
"finance": null,
"health": null,
"home": null,
"it-and-media": null,
"law": null,
"miscellaneous": null,
"mobility": null,
"nature": null,
"networking": null,
"peace": null,
"politics": null,
"psyche": null,
"science": null,
"spirituality": null
},
"name": {
"body-and-excercise": null,
"children": null,
"culture": null,
"economy": null,
"energy": null,
"finance": null,
"health": null,
"home": null,
"it-and-media": null,
"law": null,
"miscellaneous": null,
"mobility": null,
"nature": null,
"networking": null,
"peace": null,
"politics": null,
"psyche": null,
"science": null,
"spirituality": null
}
},
"emotions-label": {
"angry": "Enfadado",
"cry": "Llorar",
"funny": "Gracioso",
"happy": "Feliz",
"surprised": "Sorprendido"
},
"filterFollow": "Filtrar las contribuciones de los usuarios que sigo",
"filterMasonryGrid": {
"myFriends": null,
"myGroups": null,
"myTopics": null,
"noFilter": null,
"onlyArticles": null,
"onlyEvents": null
},
"filterMyGroups": null,
"inappropriatePicture": "Esta imagen puede ser inapropiada para algunas personas.",
"languageSelectLabel": "Idioma",
"languageSelectText": "Seleccione el idioma",
"newEvent": null,
"newPost": "Crear una nueva contribución",
"success": "¡Guardado!",
"teaserImage": {
"cropImage": null,
"cropperConfirm": "Confirmar",
"errors": {
"aspect-ratio-too-small": null,
"unSupported-file-format": null
},
"supportedFormats": "Insertar una imagen de formato de archivo JPG, PNG o GIF!"
},
"title": "Título",
"visibleOnlyForMembersOfGroup": null
},
"delete": {
"cancel": "Cancelar",
"comment": {
"message": "¿Realmente quieres borrar el comentario de \"<b>{name}</b>\" ?",
"success": "¡Comentario eliminado con éxito!",
"title": "Eliminar comentario",
"type": "Comentario"
},
"contribution": {
"message": "¿Realmente desea eliminar la Contribución \"<b>{name}</b>\" ?",
"success": "¡Publicación eliminado con éxito!",
"title": "Borrar contribución",
"type": "Contribución"
},
"submit": "Borrar"
},
"disable": {
"cancel": "Cancelar",
"comment": {
"message": "¿Realmente quieres deshabilitar el comentario de \"<b>{name}</b>\"?",
"title": "Desactivar comentario",
"type": "Comentario"
},
"contribution": {
"message": "¿Realmente quieres deshabilitar la contribución \"<b>{name}</b>\"?",
"title": "Deshabilitar contribución",
"type": "Contribución"
},
"submit": "Desactivar",
"success": "Discapacitado con éxito",
"user": {
"message": "¿Realmente quieres deshabilitar el usuario \"<b>{name}</b>\"?",
"title": "Desactivar usuario",
"type": "Usuario"
}
},
"donations": {
"amount-of-total": "{amount} de {total} € recaudados",
"donate-now": "Donar ahora"
},
"editor": {
"embed": {
"always_allow": "Permitir siempre contenido incrustado por proveedores externos (esta configuración se puede cambiar en cualquier momento)",
"data_privacy_info": "Sus datos aún no han sido compartidos con terceros proveedores. Si usted procede a ver este video, el siguiente proveedor probablemente recolectará datos del usuario:",
"data_privacy_warning": "¡Advertencia de privacidad de datos!",
"play_now": "Ver ahora"
},
"hashtag": {
"addHashtag": "Nuevo hashtag",
"addLetter": "Escriba una letra",
"noHashtagsFound": "No se han encontrado hashtags"
},
"legend": {
"bold": null,
"heading3": null,
"heading4": null,
"italic": null,
"legendTitle": null,
"link": null,
"orderedList": null,
"paragraph": null,
"quote": null,
"ruler": null,
"underline": null,
"unorderedList": null
},
"mention": {
"noUsersFound": "No se han encontrado usuarios"
},
"placeholder": "Deje sus pensamientos inspiradores...."
},
"error-pages": {
"403-default": "No autorizado a esta página",
"404-default": "Esta página no se pudo encontrar",
"500-default": "Error interno del servidor",
"503-default": "Servicio no disponible",
"back-to-index": "Volver a la página de índice",
"cannot-edit-post": "Esta contribución no se puede editar.",
"default": "Se produjo un error",
"group-not-found": null,
"post-not-found": "Esta contribución no se pudo encontrar",
"profile-not-found": "Este perfil no se pudo encontrar"
},
"filter-menu": {
"all": "Todas",
"article": null,
"categories": "Categorías de contenido",
"creationDate": null,
"deleteFilter": null,
"emotions": "Emociones",
"ended": {
"all": {
"hint": null,
"label": null
},
"onlyEnded": {
"hint": null,
"label": null
}
},
"event": null,
"eventsBy": null,
"eventsEnded": null,
"filter-by": "Filtrar por ...",
"following": "Usuarios que sigo",
"following-title": null,
"languages": "Idiomas",
"my-groups": null,
"order": {
"last": {
"hint": null,
"label": null
},
"newest": {
"hint": null,
"label": "Más reciente"
},
"next": {
"hint": null,
"label": null
},
"oldest": {
"hint": null,
"label": "Más antiguo"
}
},
"order-by": null,
"post-type": null,
"save": {
"error": null,
"success": null
},
"startDate": null
},
"followButton": {
"follow": "Seguir",
"following": "Siguiendo"
},
"group": {
"actionRadii": {
"continental": null,
"global": null,
"interplanetary": null,
"national": null,
"regional": null
},
"actionRadius": null,
"addMemberToGroup": null,
"addMemberToGroupSuccess": null,
"addUser": null,
"addUserNoOptions": null,
"addUserPlaceholder": null,
"allGroups": null,
"categories": null,
"categoriesTitle": null,
"changeMemberRole": null,
"contentMenu": {
"inviteLinks": null,
"muteGroup": "Silenciar grupo",
"unmuteGroup": "Desactivar silencio del grupo",
"visitGroupPage": null
},
"createNewGroup": {
"title": null,
"tooltip": null
},
"description": null,
"editGroupSettings": {
"groupName": null,
"title": null
},
"errors": {
"userAlreadyMember": null
},
"follow": null,
"foundation": null,
"general": null,
"goal": null,
"groupCreated": null,
"in": null,
"invite-links": null,
"joinLeaveButton": {
"iAmMember": null,
"join": null,
"leave": null,
"pendingMember": null,
"tooltip": null
},
"labelSlug": null,
"leaveModal": {
"confirmButton": null,
"message": null,
"title": null
},
"memberRemoved": null,
"members": null,
"membersAdministrationList": {
"avatar": null,
"name": null,
"roleInGroup": null,
"slug": null
},
"membersCount": null,
"membersListTitle": null,
"membersListTitleNotAllowedSeeingGroupMembers": null,
"modal": {
"cancel": null,
"confirm": null,
"confirmAddGroupMemberText": null,
"confirmAddGroupMemberTitle": null
},
"muted": "Grupo silenciado",
"myGroups": null,
"name": null,
"radius": null,
"removeMember": null,
"removeMemberButton": null,
"role": null,
"roles": {
"admin": null,
"owner": null,
"pending": null,
"usual": null
},
"save": null,
"type": null,
"types": {
"closed": null,
"hidden": null,
"public": null
},
"typesOptions": {
"closed": null,
"hidden": null,
"public": null
},
"unmute": "Desactivar silencio",
"unmuted": "Silencio del grupo desactivado",
"update": null,
"updatedGroup": null
},
"hashtags-filter": {
"clearSearch": "Borrar búsqueda",
"hashtag-search": "Buscando a #{hashtag}",
"title": "Su burbuja de filtro"
},
"header": {
"avatarMenu": {
"button": {
"tooltip": null
},
"chats": "Chats",
"groups": "Grupos",
"map": "Mapa",
"myProfile": null,
"notifications": "Notificaciones"
},
"chats": {
"tooltip": "Chats"
},
"groups": {
"tooltip": "Grupos"
},
"map": {
"tooltip": "Mapa"
},
"notifications": {
"tooltip": "Notificaciones"
}
},
"index": {
"change-filter-settings": "Cambie la configuración de sus filtros para obtener más resultados.",
"no-results": "No se han encontrado contribuciones."
},
"invite-codes": {
"button": {
"tooltip": null
},
"comment-placeholder": null,
"copy-code": null,
"copy-success": null,
"create-error": null,
"create-success": null,
"delete-modal": {
"message": null,
"title": null
},
"generate-code": null,
"generate-code-explanation": null,
"group-invite-links": null,
"invalidate": null,
"invalidate-error": null,
"invalidate-success": null,
"invite-link-message-group": null,
"invite-link-message-hidden-group": null,
"invite-link-message-personal": null,
"limit-reached": null,
"my-invite-links": null,
"no-links": null,
"redeemed-count": null,
"redeemed-count-0": null
},
"localeSwitch": {
"tooltip": null
},
"location": {
"distance": null
},
"login": {
"email": "Su correo electrónico",
"failure": "Dirección de correo electrónico o contraseña incorrecta.",
"forgotPassword": "¿Olvidó su contraseña?",
"hello": "Hola",
"login": "Iniciar sesión",
"logout": "Cierre de sesión",
"moreInfo": "¿Qué es {APPLICATION_NAME}?",
"moreInfoHint": "a la página de presentación",
"no-account": "¿No tiene una cuenta?",
"no-cookie": null,
"password": "Su contraseña",
"register": "Regístrese",
"success": "¡Usted ha iniciado sesión!"
},
"maintenance": {
"explanation": "Actualmente estamos llevando a cabo algunos trabajos de mantenimiento planificados, por favor, inténtelo de nuevo más tarde.",
"questions": "Si tiene alguna pregunta o problema, por favor contáctenos por correo electrónico a",
"title": "{APPLICATION_NAME} está en mantenimiento"
},
"map": {
"alertMessage": null,
"legend": {
"event": null,
"group": null,
"theUser": null,
"user": null
},
"markerTypes": {
"event": null,
"group": null,
"theUser": null,
"user": null
},
"pageTitle": null,
"styles": {
"dark": null,
"outdoors": null,
"satellite": null,
"streets": null
}
},
"modals": {
"deleteUser": {
"created": null
}
},
"moderation": {
"name": "Moderación",
"reports": {
"author": "Autor",
"content": "Contenido",
"decideButton": "Confirmar",
"decided": "Decidido",
"decideModal": {
"cancel": "Cancelar",
"Comment": {
"disable": {
"message": "¿Realmente quiere que el comentario \"<b>{name}</b>\" permanezca <b>desactivado</b>?",
"title": "Desactivar finalmente Comentario"
},
"enable": {
"message": "¿Realmente quiere que el comentario \"<b>{nombre}</b>\" permanezca <b>habilitado</b>?",
"title": "Finalmente Habilitar Comentario"
}
},
"Post": {
"disable": {
"message": "¿Realmente quiere que la entrada \"<b>{name}</b>\" permanezca <b>desactivada</b>?",
"title": "Finalmente Desactivar Contribución"
},
"enable": {
"message": "¿Realmente quiere que la contribución \"<b>{name}</b>\" permanezca <b>activada</b>?",
"title": "Finalmente Habilitar Contribución"
}
},
"submit": "Confirmar decisión",
"User": {
"disable": {
"message": "¿Realmente quiere que el usuario \"<b>{name}</b>\" permanezca <b>desactivado</b>?",
"title": "Finalmente Deshabilitar Usuario"
},
"enable": {
"message": "¿Realmente quiere que el usuario \"<b>{name}</b>\" permanezca <b>habilitado</b>?",
"title": "Finalmente Habilitar Usuario"
}
}
},
"decision": "Decisión",
"DecisionSuccess": "Decidido con éxito!",
"disabled": "Deshabilitado",
"disabledAt": "Deshabilitado el",
"disabledBy": "desactivado por",
"empty": "Felicitaciones, nada que moderar.",
"enabled": "Habilitado",
"enabledAt": "Habilitado el",
"enabledBy": "Habilitado por",
"filterLabel": {
"all": "Todos",
"closed": "Cerrado",
"reviewed": "Revisado",
"unreviewed": "Sin revisar"
},
"moreDetails": "Ver Detalles",
"name": "Informes",
"noDecision": "¡No hay decisión!",
"numberOfUsers": "{count} usuarios",
"previousDecision": "Decisión previa:",
"reasonCategory": "Categoría",
"reasonDescription": "Descripción",
"reportedOn": "Fecha",
"status": "Estado actual",
"submitter": "comunicado por"
}
},
"notifications": {
"comment": "Comentario",
"content": "Contenido",
"empty": "Lo sentimos, no tiene ninguna notificación en este momento.",
"filterLabel": {
"all": "Todas",
"read": "Leído",
"unread": "No leído"
},
"group": null,
"markAllAsRead": "Marcar todas como leido",
"pageLink": "Todas las notificaciones",
"post": "Contribución",
"reason": {
"changed_group_member_role": null,
"commented_on_post": "Comentó su contribución ...",
"followed_user_posted": null,
"mentioned_in_comment": "Le mencionó en un comentario …",
"mentioned_in_post": "Le mencionó en una contribución …",
"post_in_group": null,
"removed_user_from_group": null,
"user_joined_group": null,
"user_left_group": null
},
"title": "Notificaciones",
"user": "Usuario"
},
"observeButton": {
"observed": null
},
"post": {
"comment": {
"reply": "Contestar",
"submit": "Comentario",
"submitted": "Comentario enviado",
"updated": "Cambios guardados"
},
"createNewEvent": {
"forGroup": {
"title": null
},
"title": null
},
"createNewPost": {
"forGroup": {
"title": null
},
"title": null
},
"edited": "editado",
"editPost": {
"event": null,
"forGroup": {
"title": null
},
"title": null
},
"event": null,
"menu": {
"delete": "Borrar contribución",
"edit": "Editar contribución",
"observe": "Observar contribución",
"observedSuccessfully": null,
"pin": "Anclar contribución",
"pinnedSuccessfully": "¡Contribución anclado con éxito!",
"unobserve": "Dejar de observar contribución",
"unobservedSuccessfully": null,
"unpin": "Desanclar contribución",
"unpinnedSuccessfully": "¡Contribución desanclado con éxito!"
},
"name": "Contribución",
"pinned": "Anuncio",
"takeAction": {
"name": "Tomar acción"
},
"viewEvent": {
"eventEnd": null,
"eventIsOnline": null,
"eventLocationName": null,
"eventStart": null,
"eventVenue": null,
"title": null
},
"viewPost": {
"forGroup": {
"title": null
},
"title": null
}
},
"profile": {
"avatar": {
"submitted": "Carga con éxito"
},
"commented": "Comentado",
"follow": "Seguir",
"followers": "Seguidores",
"following": "Siguiendo",
"invites": {
"description": "Introduzca la dirección de correo electrónico para la invitación.",
"emailPlaceholder": "Correo electrónico para invitar",
"title": "¡Invite a alguien a {APPLICATION_NAME}!"
},
"memberSince": "Miembro desde",
"network": {
"andMore": "y {number} más ...",
"followedBy": "es seguido por:",
"followedByNobody": "no es seguido por nadie.",
"following": "está siguiendo:",
"followingNobody": "no sigue a nadie.",
"title": "Red"
},
"shouted": "Recomendado",
"socialMedia": "¿Dónde más puedo encontrar?",
"userAnonym": "Anónimo"
},
"quotes": {
"african": {
"author": "Proverbio africano",
"quote": "Muchas personas pequeñas en muchos lugares pequeños hacen muchas cosas pequeñas, que pueden alterar la faz del mundo."
}
},
"release": {
"cancel": "Cancelar",
"comment": {
"error": "¡Ya ha reportado el comentario!",
"message": "¿Realmente quieres liberar el comentario de \"<b>{name}</b>\"?",
"title": "Comentario de la versión",
"type": "Comentario"
},
"contribution": {
"error": "¡Ya ha reportado la contribución!",
"message": "¿Realmente quieres liberar la contribución \"<b>{name}</b>\"?",
"title": "Contribución de la versión ",
"type": "Contribución"
},
"submit": "Liberar",
"success": "¡Liberado con éxito!",
"user": {
"error": "¡Ya ha reportado el usuario!",
"message": "¿Realmente quieres liberar al usuario \"<b>{name}</b>\"?",
"title": "Liberar usuario",
"type": "Usuario"
}
},
"report": {
"cancel": "Cancelar",
"comment": {
"error": "¡Ya ha reportado al comentario!",
"message": "¿Realmente quieres reportar el comentario de \"<b>{name}</b>\"?",
"title": "Reportar comentario",
"type": "Comentario"
},
"contribution": {
"error": "¡Ya ha reportado la contribución!",
"message": "¿Realmente quieres informar al usuario de la contribución \"<b>{name}</b>\"?",
"title": "Informe Contribución",
"type": "Contribución"
},
"reason": {
"category": {
"invalid": "Por favor seleccione una categoría válida",
"label": "Seleccione una categoría:",
"options": {
"advert_products_services_commercial": "Publicidad de productos y servicios con fines comerciales.",
"criminal_behavior_violation_german_law": "Comportamiento criminal o violación de la ley alemana.",
"discrimination_etc": "Contribuciones discriminatorias, comentarios, expresiones o insultos.",
"doxing": "La divulgación de información personal de otros sin su consentimiento o amenaza de (\"doxing\").",
"glorific_trivia_of_cruel_inhuman_acts": "Glorificación o minimización de actos de violencia crueles o inhumanos.",
"intentional_intimidation_stalking_persecution": "Intimidación intencional, acoso o persecución.",
"other": "Otra ...",
"pornographic_content_links": "Publicación o enlace de material claramente pornográfico."
},
"placeholder": "Categoría ..."
},
"description": {
"label": "Por favor explique: ¿Por qué le gusta reportar esto?",
"placeholder": "Información adicional...."
}
},
"submit": "Informe",
"success": "¡Gracias por informar!",
"user": {
"error": "¡Ya reportó al usuario!",
"message": "¿Realmente quieres reportar al usuario \"<b>{name}</b>\"?",
"title": "Reportar usuario",
"type": "Usuario"
}
},
"search": {
"failed": "No se ha encontrado nada",
"for": null,
"heading": {
"Group": null,
"Post": "Contribuciones",
"Tag": null,
"User": "Usuarios"
},
"hint": "¿Qué estás buscando? Utiliza !… para contribuciones, @… para usuarios, #… para hashtags.",
"no-results": null,
"page": null,
"placeholder": "Buscar",
"results": null,
"title": null
},
"settings": {
"badges": {
"click-to-select": null,
"click-to-use": null,
"description": null,
"name": null,
"no-badges-available": null,
"remove": null,
"success-update": null,
"verification": null
},
"blocked-users": {
"block": "Bloquear usuario",
"columns": {
"name": "Nombre",
"slug": "Alias",
"unblock": "Desbloquear"
},
"empty": "Hasta ahora, no ha bloqueado a nadie.",
"explanation": {
"closing": "Esto debería ser suficiente por ahora para que los usuarios bloqueados no puedan molestarle más.",
"commenting-disabled": "No es posible hacer comentarios en este momento en esta contribución",
"commenting-explanation": "Esto puede suceder por varias razones, por favor vea nuestra ",
"intro": "Si otro usuario ha sido bloqueado por usted, esto es lo que sucede:",
"notifications": "Los usuarios bloqueados no recibirán más notificaciones si se mencionan en sus contribuciones.",
"their-perspective": "Viceversa: la persona bloqueada tampoco verá más sus contribuciones en sus noticias.",
"your-perspective": "Las contribuciones de la persona bloqueada no aparecerán más en su canal de noticias."
},
"how-to": "Puede bloquear a otros usuarios en la página de perfil de aquellos a través del menú de contenido.",
"name": "Usuarios bloqueados",
"unblock": "Desbloquear usuario",
"unblocked": "{name} está desbloqueado nuevamente"
},
"data": {
"labelBio": "Acerca de usted",
"labelCity": "Su ciudad o región",
"labelCityHint": null,
"labelName": "Su nombre",
"labelSlug": "Su nombre de usuario único",
"name": "Sus datos",
"namePlaceholder": "Femanon Funny",
"success": "¡Sus datos han sido actualizados con éxito!"
},
"deleteUserAccount": {
"accountDescription": "Tenga en cuenta que su contribución y sus comentarios son importantes para nuestra comunidad. Si aún decide borrarlos, debe marcarlos a continuación.",
"accountWarning": "¡NO PUEDE GESTIONAR y NO PUEDE RECUPERAR su cuenta, contribuciones o comentarios después de eliminar su cuenta!",
"accountWarningAdmin": null,
"accountWarningIsAdmin": null,
"commentedCount": "Eliminar mis {count} comentarios",
"confirmDeleting": null,
"contributionsCount": "Eliminar mis {count} contribuciones",
"infoAdmin": null,
"name": "Eliminar cuenta de usuario",
"pleaseConfirm": "¡Acción destructiva! Escriba “{confirm}” para confirmar.",
"success": "¡Cuenta eliminada con éxito!"
},
"download": {
"description": null,
"json": null,
"name": "Descargar datos"
},
"email": {
"change-successful": "Su dirección de correo electrónico ha sido cambiada con éxito.",
"labelEmail": "Cambiar su dirección de correo electrónico",
"labelNewEmail": "Nueva dirección de correo electrónico",
"labelNonce": "Introduzca su código",
"name": "Su correo electrónico",
"submitted": "Se ha enviado un correo electrónico a <b>{email}</b> para verificar su dirección.",
"success": "Se ha registrado una nueva dirección de correo electrónico.",
"validation": {
"same-email": "Esta es su dirección de correo electrónico actual"
},
"verification-error": {
"explanation": "Esto puede tener diferentes causas:",
"message": "Su correo electrónico no se pudo cambiar.",
"reason": {
"invalid-nonce": "¿El código de confirmación no es válido?",
"no-email-request": "¿Está seguro de que ha solicitado un cambio de su dirección de correo electrónico?"
},
"support": "Si el problema persiste, póngase en contacto con nosotros por correo electrónico a"
}
},
"embeds": {
"info-description": "Aquí está la lista de proveedores de terceros cuyo contenido se puede mostrar como código de terceros, por ejemplo, en forma de vídeos incrustados.",
"name": "Proveedores externos",
"status": {
"change": {
"allow": "Seguro",
"deny": "No, gracias",
"question": "¿Debería mostrarse siempre el código fuente incrustado de terceros?"
},
"description": "Por defecto, el código incrustado de proveedores externos está",
"disabled": {
"off": "inicialmente sin mostrar",
"on": "mostrado inmediatamente"
}
}
},
"invites": {
"name": "Invita"
},
"languages": {
"name": "Idiomas"
},
"muted-users": {
"columns": {
"name": "Nombre",
"slug": "Alias",
"unmute": "Dejar de silenciar"
},
"empty": "Hasta ahora, no ha silenciado a nadie.",
"explanation": {
"intro": "Si otro usuario ha sido silenciado por usted, esto es lo que sucede:",
"search": "Las contribuciones de personas silenciadas desaparecen de los resultados de búsqueda.",
"your-perspective": "Las contribuciones de la persona silenciada ya no aparecerán en tu canal de noticias."
},
"how-to": "Puede silenciar a otros usuarios en su página de perfil a través del menú de contenido.",
"mute": "Silenciar usuario",
"name": "Usuarios silenciados",
"unmute": "Dejar de silenciar al usuario",
"unmuted": "{name} no está silenciado ahora"
},
"name": "Configuración",
"notifications": {
"chat": "Chat",
"chatMessage": "Mensaje recibido mientras estaba ausente",
"checkAll": "Seleccionar todo",
"commentOnObservedPost": "Comentario en una contribución que estoy observando",
"followingUsers": null,
"group": "Grupos",
"groupMemberJoined": "Un nuevo miembro se unió a un grupo mio",
"groupMemberLeft": "Un miembro dejó un grupo mio",
"groupMemberRemoved": "Fui eliminado de un grupo",
"groupMemberRoleChanged": "Mi rol en un grupo ha cambiado",
"mention": "Mencionado en una contribución",
"name": "Notificaciones por correo electrónico",
"post": "Entradas y comentarios",
"postByFollowedUser": "Posts by users I follow",
"postInGroup": "Post en un grupo del que soy miembro",
"send-email-notifications": "Enviar notificaciones por correo electrónico",
"success-update": "¡Configuración de notificaciones guardada!",
"uncheckAll": "Deseleccionar todo"
},
"organizations": {
"name": "Mis organizaciones"
},
"privacy": {
"make-shouts-public": "Compartir artículos que he recomendado en mi perfil público",
"name": "Privacidad",
"success-update": "Configuración de privacidad guardada"
},
"security": {
"change-password": {
"button": "Cambiar contraseña",
"label-new-password": "Su nueva contraseña",
"label-new-password-confirm": "Confirmar nueva contraseña",
"label-old-password": "Su contraseña antigua",
"message-new-password-confirm-required": "Confirme su nueva contraseña",
"message-new-password-missmatch": "Vuelva a escribir la misma contraseña",
"message-new-password-required": "Introduzca una nueva contraseña",
"message-old-password-required": "Ingrese su contraseña anterior",
"passwordSecurity": "Seguridad de la contraseña",
"passwordStrength0": "Contraseña muy insegura",
"passwordStrength1": "Contraseña insegura",
"passwordStrength2": "Contraseña mediocre",
"passwordStrength3": "Contraseña segura",
"passwordStrength4": "Contraseña muy sólida",
"success": "¡Contraseña cambiada con éxito!"
},
"name": "Seguridad"
},
"social-media": {
"add-new-link": null,
"delete-modal": {
"confirm-button": null,
"message": null,
"title": null
},
"edit-link": null,
"name": "Medios de comunicación social",
"placeholder": "Agregar una URL de Social-Media",
"requireUnique": "Ya ha añadido esta url",
"submit": "Añadir enlace",
"successAdd": "Social-Media agregó. Perfil actualizado!",
"successDelete": "Social-Media borrado. Perfil actualizado!"
},
"validation": {
"slug": {
"alreadyTaken": "Este nombre de usuario ya está en uso.",
"regex": "Los caracteres permitidos son solo letras minúsculas, números, guiones bajos y guiones."
}
}
},
"shoutButton": {
"shouted": "recomendado"
},
"site": {
"back-to-login": "Volver a la página de inicio de sesión",
"bank": "cuenta bancaria",
"code-of-conduct": "Código de conducta",
"contact": "Contacto",
"data-privacy": "Protección de datos",
"donate": null,
"error-occurred": "Se ha ocurrido un error.",
"faq": "Preguntas más frecuentes",
"germany": "Alemania",
"imprint": "Pie de imprenta",
"made": "Hecho con ❤️",
"register": "Número de registro",
"support": null,
"termsAndConditions": "Términos y condiciones",
"thanks": "¡Gracias!"
},
"termsAndConditions": {
"newTermsAndConditions": "Nuevos términos de uso",
"termsAndConditionsNewConfirm": "He leído y acepto los nuevos términos de uso.",
"termsAndConditionsNewConfirmText": "¡Por favor, lea los nuevos términos de uso ahora!"
},
"user-teaser": {
"popover": {
"open-profile": null
}
}
}