Dutch edit field names: naam/omschrijving/adres primary, English name/topic/alias as aliases; v3.0.1

This commit is contained in:
Eddy de Vink 2026-09-06 15:17:39 +02:00
commit 7f9336ec36
3 changed files with 25 additions and 13 deletions

View file

@ -1,6 +1,6 @@
maubot: 0.1.0
id: nl.roomsoverview
version: 3.0.0
version: 3.0.1
license: MIT
modules:
- roomsoverview

Binary file not shown.

View file

@ -600,12 +600,12 @@ class RoomsOverviewPlugin(Plugin):
"* `!kamer verwijder <room-id of #alias>` — verwijder een kamer uit de index\n"
"* `!kamer ververs` — controleer of kamers nog bestaan en vul "
"ontbrekende avatars aan\n\n"
"**Veld bij wijzig:** `name` (naam), `topic` (omschrijving) of "
"`alias` (adres). Een lege waarde wist het veld.\n\n"
"**Veld bij wijzig:** `naam` (of `name`), `omschrijving` (of `topic`) of "
"`adres` (of `alias`). Een lege waarde wist het veld.\n\n"
"**Voorbeelden:**\n"
"* `!kamer voegtoe #algemeen:mtux.nl`\n"
"* `!kamer wijzig #algemeen:mtux.nl name=Algemeen Overleg`\n"
"* `!kamer wijzig #algemeen:mtux.nl topic=` (wist de omschrijving)\n"
"* `!kamer wijzig #algemeen:mtux.nl naam=Algemeen Overleg`\n"
"* `!kamer wijzig #algemeen:mtux.nl omschrijving=` (wist de omschrijving)\n"
"* `!kamer verwijder #algemeen:mtux.nl`\n\n"
"Alleen moderators (macht ≥ 50) mogen kamers toevoegen, wijzigen "
"of verwijderen. Iedereen kan de lijst bekijken."
@ -692,7 +692,7 @@ class RoomsOverviewPlugin(Plugin):
name="wijzig",
aliases=["edit"],
help="Wijzig een veld van een kamer: !kamer wijzig <room-id of #alias> "
"<name|topic|alias>=<waarde> (moderator+)",
"<naam|omschrijving|adres>=<waarde> (moderator+)",
)
@command.argument("args", pass_raw=True, required=True)
async def edit_room(self, evt: MessageEvent, args: str) -> None:
@ -702,17 +702,25 @@ class RoomsOverviewPlugin(Plugin):
parsed = _parse_edit_args(args)
if parsed is None:
await evt.reply(
"Gebruik: `!kamer wijzig <room-id-of-alias> <name|topic|alias>=<waarde>`\n"
"Lege waarde wist het veld (bijv. `alias=`)."
"Gebruik: `!kamer wijzig <room-id-of-alias> <naam|omschrijving|adres>=<waarde>`\n"
"Lege waarde wist het veld (bijv. `omschrijving=`)."
)
return
room_ref, field, value = parsed
field_ok = {"name": "display_name", "topic": "topic", "alias": "canonical_alias"}
# NL veldnamen primair (naam/omschrijving/adres); Engels (name/topic/alias) als alias
field_ok = {
"naam": "display_name", "name": "display_name",
"omschrijving": "topic", "topic": "topic",
"adres": "canonical_alias", "alias": "canonical_alias",
}
if field not in field_ok:
await evt.reply("Veld moet `name`, `topic` of `alias` zijn.")
await evt.reply(
"Veld moet `naam`, `omschrijving` of `adres` zijn "
"(Engels `name`, `topic`, `alias` werkt ook)."
)
return
if field == "alias" and value and not value.startswith("#"):
await evt.reply("Alias moet beginnen met `#` (bijv. `#mijn-room:server.nl`).")
if field in ("adres", "alias") and value and not value.startswith("#"):
await evt.reply("Adres moet beginnen met `#` (bijv. `#mijn-kamer:server.nl`).")
return
room_id = room_ref if room_ref.startswith("!") else await self._resolve_alias(room_ref)
if not room_id:
@ -737,7 +745,11 @@ class RoomsOverviewPlugin(Plugin):
)
label = row["display_name"] or row["canonical_alias"] or room_id
shown = new_value if new_value is not None else "(leeg)"
field_name = {"name": "naam", "topic": "omschrijving", "alias": "alias"}[field]
field_name = {
"display_name": "naam",
"topic": "omschrijving",
"canonical_alias": "adres",
}[column]
await evt.reply(
f"Kamer bijgewerkt: **{label}** — {field_name} is nu `{shown}`."
)