Ich möchte in meinem Discourse-Forum eine Regel durchsetzen, bei der Benutzer für eine bestimmte Kategorie beim Erstellen eines Themas einen bestimmten Tag anhängen müssen. Benutzer können beliebig viele Tags anhängen, aber ein bestimmter Tag muss vorhanden sein, andernfalls sollte die Themen-Erstellung mit einer Fehlermeldung blockiert werden.
Ich verwende das Blackout-Theme (oder ein benutzerdefiniertes Theme) und möchte diese Validierung clientseitig mit JavaScript hinzufügen.
Gibt es eine Möglichkeit, eine solche Bedingung im JavaScript des Themes (z. B. im benutzerdefinierten Code des Blackout-Themes) hinzuzufügen, um:
Zu überprüfen, ob das erstellte Thema zur spezifischen Kategorie gehört,
Zu überprüfen, ob der erforderliche Tag angehängt ist,
Einen Fehler anzuzeigen und die Themen-Erstellung zu verhindern, wenn der erforderliche Tag fehlt?
Wenn ja, könnte mir jemand ein Beispiel oder den besten Ansatz dafür mitteilen?
Sie müssen also nur eine Tag-Gruppe erstellen, das gewünschte Tag hinzufügen und dann diese Gruppe in der Kategorie auswählen, in der sie erforderlich sein soll.
Hallo,
Ich habe die Schritte befolgt.
Ich habe eine Tag-Gruppe erstellt und ihr ein einzelnes Tag hinzugefügt.
In den Kategorieeinstellungen unter Tags > Erforderliche Tag-Gruppe habe ich diese Tag-Gruppe ausgewählt.
Meine Erwartung ist: Wenn ein neues Thema in dieser Kategorie erstellt wird, muss mindestens ein Tag aus der erforderlichen Tag-Gruppe obligatorisch sein.
Das System erlaubt jedoch die Erstellung von Themen ohne ein Tag aus der erforderlichen Tag-Gruppe, was den Zweck dieser Einstellung zunichte macht.
Ich habe Screenshots beigefügt, die Folgendes zeigen:
Die Konfiguration der Tag-Gruppe
Die Kategorieeinstellungen
Ein neu erstelltes Thema, das die Anforderung umgangen hat
Ich persönlich würde es vorziehen, wenn es nicht global angewendet wird. Der Sinn von Administratoren ist es, alles überschreiben zu können, und dies würde es unmöglich machen, diese spezielle Sache zu überschreiben. Es sei denn, Sie fügen eine Möglichkeit hinzu, dies zu umgehen, was einfach viel mehr Arbeit zu sein scheint, als es so zu belassen, wie es ist.
@S.AAKASH_MUTHIAH Konnten Sie Ihr Problem lösen? Ich denke, @chapoi’s Rat funktioniert für Ihren Anwendungsfall. Sie müssen sich nur daran erinnern, dass Sie als Administrator nicht davon betroffen sind, da Sie nicht von anderen Einschränkungen für Nicht-Administratoren betroffen sind.