Add Groups to Administration
A group is a shared address and mailbox and the people who share it. To Stalwart it is an x:Account of type Group, behind the same sysAccount* permissions as a person, so it sits under Directory beside Accounts: search, a page of fifty with each group's member count, and a panel to create, edit and delete one. Membership lives on the member, not the group. Members are the users whose memberGroupIds name it, and adding or removing one is a single memberGroupIds/<group> pointer on that user's account -- true or null -- which leaves their other groups alone. Changes apply straight away rather than riding on Save, so the list is always what the server has. Nobody can add or remove themselves, the same line the account panel draws at one's own role. A group's role is Default or Custom, not a person's User or Admin, and it is what the group may do: in 0.16 a user's permissions come from their own roles only, and a group gives its members what is shared with it. Only roles the viewer could grant are offered. Delete takes the members out first and then deletes the group, the order a domain's keys go before the domain, because the registry keeps anything another object names. A role that cannot change the members' accounts is not offered a delete it could only half finish. The mock's groups had a person's roles, accepted a memberGroupIds filter without applying it, and answered a linked delete with the wrong shape; all three follow the source now, and it refuses nested groups and memberships of things that are not groups. Nothing about groups has been run against a live server yet: production has none, and every operation is a write. KNOWN-ISSUES says what was read from source. Thirty-five new strings, two of them plurals, in all nine catalogues.
This commit is contained in:
@@ -141,6 +141,39 @@ export const catalog: Catalog = {
|
||||
"Could not be loaded": "No se pudo cargar",
|
||||
"Detailed metrics, the delivery queue, logs and server settings are in Stalwart's own administration.": "Las métricas detalladas, la cola de entrega, los registros y la configuración del servidor están en la administración de Stalwart.",
|
||||
"Open Stalwart admin": "Abrir la administración de Stalwart",
|
||||
"Default group role": "Rol de grupo predeterminado",
|
||||
"A group needs an address.": "Un grupo necesita una dirección.",
|
||||
"New group": "Nuevo grupo",
|
||||
"Your role lets you view groups but not change them.": "Su rol le permite ver los grupos, pero no modificarlos.",
|
||||
"No domains are available to create a group on.": "No hay dominios disponibles para crear un grupo.",
|
||||
"Mail to these addresses is delivered to this group. Changes apply when you save.": "El correo a estas direcciones se entrega a este grupo. Los cambios se aplican al guardar.",
|
||||
"What the group itself may do. Members keep their own roles: a group gives them what is shared with it, not its permissions. Only roles whose permissions you hold yourself are offered.": "Lo que el propio grupo puede hacer. Los miembros conservan sus propios roles: un grupo les da lo que se comparte con él, no sus permisos. Solo se ofrecen los roles cuyos permisos usted mismo tiene.",
|
||||
"Loading the group's members…": "Cargando los miembros del grupo…",
|
||||
"This group has more members than can be taken out at once.": "Este grupo tiene más miembros de los que se pueden quitar de una vez.",
|
||||
"Deleting a group takes its members out of it first, and your role can't change their accounts.": "Eliminar un grupo primero quita a sus miembros, y su rol no puede modificar sus cuentas.",
|
||||
"Create group": "Crear grupo",
|
||||
"Added {address} to the group": "{address} añadido al grupo",
|
||||
"Removed {address} from the group": "{address} quitado del grupo",
|
||||
"Remove {address} from the group": "Quitar {address} del grupo",
|
||||
"You can't change your own group memberships.": "No puede cambiar sus propias pertenencias a grupos.",
|
||||
"Remove from group": "Quitar del grupo",
|
||||
"No members yet": "Aún no hay miembros",
|
||||
"Showing {shown} of {total} members.": "Se muestran {shown} de {total} miembros.",
|
||||
"Members get what is shared with the group, such as its mailbox. Changes apply straight away.": "Los miembros reciben lo que se comparte con el grupo, como su buzón. Los cambios se aplican al instante.",
|
||||
"Add a member by name or address": "Añadir un miembro por nombre o dirección",
|
||||
"Add a member": "Añadir un miembro",
|
||||
"No one else matches": "Nadie más coincide",
|
||||
"Deletes the group and its mailbox. Its members' own accounts stay.": "Elimina el grupo y su buzón. Las cuentas de sus miembros se conservan.",
|
||||
"Delete group…": "Eliminar grupo…",
|
||||
"Delete group": "Eliminar grupo",
|
||||
"The group's own mail is removed in the background, and it can't be undone.": "El correo del grupo se elimina en segundo plano, y no se puede deshacer.",
|
||||
"Shared addresses and mailboxes, and the people who share them.": "Direcciones y buzones compartidos, y las personas que los comparten.",
|
||||
"Search groups": "Buscar grupos",
|
||||
"No groups match": "Ningún grupo coincide",
|
||||
"No groups yet": "Aún no hay grupos",
|
||||
"Your organisation has reached the number of groups it is allowed.": "Su organización ha alcanzado el número de grupos permitido.",
|
||||
"This group no longer exists. Someone may have deleted it.": "Este grupo ya no existe. Puede que alguien lo haya eliminado.",
|
||||
"The server did not say whether the group was created.": "El servidor no indicó si el grupo se creó.",
|
||||
"User": "Usuario",
|
||||
"Administrator": "Administrador",
|
||||
"Custom role": "Rol personalizado",
|
||||
@@ -1533,6 +1566,8 @@ export const catalog: Catalog = {
|
||||
"{n} accounts use this domain. Move or delete them first.": { one: "{n} cuenta usa este dominio. Muévala o elimínela primero.", other: "{n} cuentas usan este dominio. Muévalas o elimínelas primero." },
|
||||
"The server stops accepting mail for this domain, and its {n} DKIM keys are deleted. This can't be undone.": { one: "El servidor deja de aceptar correo para este dominio y se elimina su {n} clave DKIM. No se puede deshacer.", other: "El servidor deja de aceptar correo para este dominio y se eliminan sus {n} claves DKIM. No se puede deshacer." },
|
||||
"{n} domains": { one: "{n} dominio", other: "{n} dominios" },
|
||||
"{n} groups": { one: "{n} grupo", other: "{n} grupos" },
|
||||
"Its {n} members are taken out of the group first, and lose what was shared with it. The group's own mail is removed in the background, and it can't be undone.": { one: "Primero se quita del grupo a su {n} miembro, que pierde lo que se compartía con él. El correo del grupo se elimina en segundo plano, y no se puede deshacer.", other: "Primero se quita del grupo a sus {n} miembros, que pierden lo que se compartía con él. El correo del grupo se elimina en segundo plano, y no se puede deshacer." },
|
||||
"{n} mailing lists": { one: "{n} lista de correo", other: "{n} listas de correo" },
|
||||
"{n} DKIM keys": { one: "{n} clave DKIM", other: "{n} claves DKIM" },
|
||||
"{n} other items": { one: "{n} elemento más", other: "{n} elementos más" },
|
||||
|
||||
Reference in New Issue
Block a user