Jeder Client meldet beim Start seinen Status (Name, Abteilung, Plugin- und
Thunderbird-Version) als _clients/<email>.json ins Gitea-Repo — aber nur, wenn
sich tatsächlich etwas geändert hat (kein Commit-Spam pro Start).
Web-Editor: neuer Admin-Unterpunkt "User & Versionen" (Route /api/clients)
mit Tabelle je User und "veraltet"-Markierung für Clients, die nicht auf der
neuesten gemeldeten Version laufen. _clients/ ist in den Ordner-Filtern
ausgenommen, damit es nicht als Abteilung erscheint.
Nebenbei: Web-Editor-Button-Label "Abteilung" -> "Vorlage" (Templates-Tab).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015PZHd9vRsBiH8cKYdQo1Yv
Neuer forcedPrefs-WebExtension-Experiment (Services.prefs) setzt beim Start
globale Prefs (Startseite aus, Kartenansicht, nicht gruppiert, absteigend,
3-Spalten-Layout, nicht auto-gelesen) sowie pro Identität die Signatur-/
Antwort-Einstellungen. Pro Setting im Options-Dialog (⚙-Tab) abschaltbar.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015PZHd9vRsBiH8cKYdQo1Yv
Thunderbird cacht die Identitäts-Signatur pro Sitzung, daher zeigte ein nach
dem Hintergrund-Sync geöffnetes Verfassen-Fenster noch den alten Footer.
background.js hängt sich jetzt an tabs.onCreated und tauscht im Signaturblock
automatisch den Footer-Teil (ab SIG_FOOTER_START) gegen den frischen aus —
ohne Benutzeraktion.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NNGrD9ewk1gkStw9znPqQ1
Pull-Lookup für Signatur-Header war case-sensitiv gegen eine lowercase
headerMap → Groß-/Leerzeichen-Namen wurden nie gefunden, Plugin fiel auf
die lokale TB-Signatur zurück und revertierte beim Push die Web-Editor-
Änderung. Jetzt: case-insensitive Lookup, kanonischer sigSlug (= Web-Editor-
Format, lowercase-bindestrich) zum Lesen+Schreiben, Legacy-Format nur noch
lesend, bei mehreren Treffern gewinnt der neueste Commit. Keine git-seitigen
Breaking Changes — alte Plugin-Versionen (Groß-Dateien) bleiben kompatibel.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- QuickMove markiert Nachrichten als gelesen, pro Aktion ein-/ausschaltbar
(Checkbox in den QuickMove-Einstellungen, Default an)
- Button-Label heißt wie die Aktion, wenn nur eine konfiguriert ist (setLabel)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Auto-Update-URLs (manifest.json, updates.json), release.sh OWNER, CLAUDE.md
von kendrick.bollens auf hps
- web-editor/docker-compose.yml: Git-Build-Context auf hps-Repo-URL
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Beim Speichern von E-Mail 1 werden alle =email1 Identitäten mit-aktualisiert
- attachSignature: false auch im Second Pass (=other@ Referenzen) gesetzt
- Background-Sync: SHA-Check alle 5s, voller Pull nur bei Änderung
- Sync-Hashes werden nach Pull im Storage geschrieben → grüne Dots
- UI refreshed automatisch bei Background-Sync (storage.onChanged)
- Scope-Badge-Bug gefixt (folderToScope normalisiert den Vergleich)
- defaults.local.json: optionale vorkonfigurierte Verbindungsdaten
- README: Doku für defaults.local.json und XPI-Build mit/ohne Defaults
- Fix: Pull überschreibt lokale Vorlagen nicht mehr (Merge statt Replace)
- Fix: toFilename behält Leerzeichen und Groß-/Kleinschreibung
- E-Mail in Settings ist jetzt ein Dropdown mit TB-Identitäten
- Optionale defaults.local.js für vorkonfigurierte Verbindungsdaten (.gitignored)
- "Bitte wählen" Placeholder entfernt
- Erste Identität wird beim Laden direkt ausgewählt
- Signatur wird sofort in den Editor geladen (kein manuelles Umschalten nötig)
- 3 Sichtbarkeitsstufen für Vorlagen: Persönlich / Abteilung / Alle
- Persönliche Vorlagen werden in _benutzer/{email}/ synchronisiert
- Sichtbarkeit direkt in der Liste per Dropdown änderbar
- Warnung beim Verringern der Sichtbarkeit (Server-Löschung)
- Auto-Erkennung von Abteilung + E-Mail via _config/abteilungen.json
- Toast-Benachrichtigungen statt unsichtbare Status-Badges
- Lade-Spinner bei Sync-Operationen
- Sync-Dots mit Symbolen (nicht nur Farbe) für Barrierefreiheit
- Custom Delete-Modal statt browser confirm()
- Collapsible-Sections visuell als klickbar erkennbar
- Token-Feld mit Show/Hide-Toggle
- Inline-Validierung für Template-Namen
- Checkbox-Klickflächen vergrößert + Label-Klick
- Offline-Erkennung mit Banner
- Font-Dropdown Viewport-Fix
- Popup: Prefix-Dropdown verständlicher
- Signaturen: erste Identität automatisch ausgewählt
- README komplett neu geschrieben
- HTML-Vorlagen werden separat verteilt (nicht mehr im Plugin-Repo)
- background.js: insertText API für korrekte Darstellung im Composer
- background.js: automatischer Wechsel zu HTML-Modus bei Plain-Text
- Options-Seite: komplett überarbeitetes UI mit Hotel-Branding
- Popup: deutsches UI, gestylte Template-Auswahl
- Notifications auf Deutsch
- Fertige XPI im Repo