|
Fix: test feedback round, cirkels tagline + report details + full i18n
Three findings from Bart's test pass, tied together by the new i18n keys:
- The admin tagline said "Solo mode" even with Cirkels (federation) on.
Solo-tenancy now distinguishes: apEnabled -> "Cirkels-modus: jouw site,
verbonden met de fediverse", else the solo line. New key in nl/en/de.
- Reports only showed who reported; now they show the reason and WHICH
post. getNotifications resolves the stored
objects URIs of a report:
our own /ap/notes/<id> become "Over de post: <title>" links under the
description; an empty reason renders "Geen reden opgegeven". Other URIs
(the actor itself) are skipped, the row already names the account.
- Notificaties and Betaalde posts were hardcoded Dutch on an
English-configured Klonkt. Everything now goes through t(): the two
admin pages (including their client-side status strings, passed via the
JSON data block), the admin menu buttons, and the visitor-facing paid
pages (gate, passkey, result). Server-side push payloads translate too,
using the SITE's content language (fallback KLONKT_DEFAULT_LANG), and
the test ping uses the request language. Full nl/en/de dictionaries.
Changed files:
src/services/i18n.js
- admin.tagline_cirkels, admin.b_paid/b_push/back, notif.report_about/
report_noreason, and the push.*, apaid.*, pgate.*, ppk.*, pres.*
blocks in nl/en/de
src/routes/admin.js, src/views/pages/admin.ejs
- circlesOn (apEnabled) -> cirkels tagline; menu buttons via t()
src/services/ActivityPubService.js
- report objects resolved to post links; push payloads via i18nT with
pushLang(slug) (site language)
src/views/pages/fedi-notifications.ejs
- report reason fallback + "Over de post" links (+ styles)
src/routes/admin-push.js, src/views/pages/admin-push.ejs
- pageTitleKey push.t; all copy + JS status strings via t()
src/routes/admin-paid.js, src/views/pages/admin-paid.ejs
- pageTitleKey apaid.t; all copy via t(), copy-button label via data-attr
src/routes/paid.js
- pageTitleKey pres.t / ppk.t
src/views/pages/paid-gate.ejs, paid-passkey.ejs, paid-result.ejs
- visitor copy + JS strings via t()
src/routes/push.js
- test notification via resolveLang(req)
-robo
Co-Authored-By: Claude Opus 4.8 <noreply@…>
|