Discourse Button für beobachtete Kategorien

:discourse: Zusammenfassung Watch Category Button fügt Posts einen Marker-Span hinzu, der zu einer „Diese Kategorie beobachten“-Schaltfläche wird.
:hammer_and_wrench: Repository https://github.com/pacharanero/discourse-watch-category-button
:open_book: Neu bei Discourse-Themes? Anfängerleitfaden zur Verwendung von Discourse-Themes

Diese Theme-Komponente installieren

:information_source: Diese Theme-Komponente nutzt die Sitzung des angemeldeten Benutzers, um die Kategories-Benachrichtigungsstufen zu aktualisieren; es sind keine API-Schlüssel erforderlich.

Funktionen

  • Füge eine „Diese Kategorie beobachten“-Schaltfläche in Posts hinzu, indem ein sanitizersicherer Span verwendet wird.

  • Ein Klick auf die Schaltfläche setzt die Kategories-Benachrichtigungsstufe des aktuellen Benutzers auf Beobachten, entweder für die aktuelle Kategorie oder für eine über CategoryId ausgewählte Kategorie.

  • Nur Posts, die von erlaubten Gruppen erstellt wurden (Standard: staff), werden in Schaltflächen umgewandelt (dies dient dazu, die Möglichkeit zu minimieren, dass diese TC missbraucht wird, um Benutzer durch Täuschung zum Beobachten von Kategorien zu bewegen).

  • Unterstützt das Ziel einer spezifischen Kategorie-ID oder der Kategorie des aktuellen Posts.

  • Integriert sich in die vorhandene Discourse-Funktionalität für Beobachtungs-Benachrichtigungen, ändert jedoch nicht, wie der Beobachtungsstatus ansonsten vom Benutzer in seinen Einstellungen, pro Kategorie oder bei der Abbestellung von E-Mail-Benachrichtigungen verwaltet wird.

Verwendung

Eine spezifische Kategorie festlegen

<span data-watch-category="3">Diese Kategorie beobachten</span>

Die Kategorie des aktuellen Posts verwenden

<span data-watch-category="current">Diese Kategorie beobachten</span>

Ergebnis:

Einstellungen

Diese Komponente enthält noch keine Theme-Einstellungen. Das ist der nächste Schritt, sobald ich sichergestellt habe, dass es keine schwerwiegenden Fehler gibt und dass diese TC für andere nützlich ist.

Sicherheits- und Datenschutzaspekte

  • Diese Schaltflächen können nur von #staff-Benutzern erstellt werden (momentan).
  • Erfordert einen expliziten Klick des Benutzers, um die Benachrichtigungseinstellungen zu ändern.
  • Es werden keine API-Schlüssel verwendet; es verlässt sich auf die angemeldete Sitzung.

Roadmap-Ideen

  • Die Gruppen, die Schaltflächen erstellen können, über Theme-Einstellungen konfigurierbar machen.
  • Den Button-Stil über Theme-Einstellungen konfigurierbar machen.
  • Die Benachrichtigungsstufe konfigurierbar machen (z. B. Verfolgen, Beobachten, Stummgeschaltet).

Mitwirken

Ich freue mich über Beiträge! Bitte öffne Issues oder Pull Requests im GitHub-Repository. Idealerweise verbessern wir diese Komponente, anstatt sie zu forken, um ALLOWED_GROUPS oder andere kleine Änderungen vorzunehmen.

Verwandte Themen

Bei der Recherche, ob diese TC bereits existiert, habe ich einige Themen gefunden, die ähnliche Funktionalitäten anfordern:

Change notification level with a link
Can I create a link to subscribe to a category? - #3 by david
Make watching a category more prominent for users
Notification setting button with context

6 „Gefällt mir“