(Die Feature-Anfrage der einen Person ist der Fehlerbericht der anderen Person…
)
Die Indexseite „Gruppen“ (z. B. /groups oder /g) sollte die Sichtbarkeitseinstellungen der automatischen Gruppen berücksichtigen und sie entsprechend anzeigen. Dies geschieht für die Gruppe „Moderatoren“, aber nicht für andere. Dies liegt an einer fest kodierten Ausnahme in GroupsController.index(), die dazu führt, dass die anderen automatischen Gruppen niemals auf der Indexseite angezeigt werden, wenn sie von Nicht-Mitarbeitern aufgerufen werden, unabhängig von den Sichtbarkeitseinstellungen.
Dieses außergewöhnliche Verhalten ist in mindestens zwei Punkten problematisch:
- Wenn ein Administrator automatische Gruppen für Nicht-Mitarbeiter indizieren möchte, verhindert dies, dass er dies tut.
- Die Diskrepanz zwischen der Sichtbarkeitseinstellung und der tatsächlichen Sichtbarkeit ist gefährlich verwirrend. Insbesondere erweckt es den Anschein, dass die Einstellung für automatische Gruppen ignoriert/irrelevant ist (z. B. „Mensch, ich schätze, automatische Gruppen sind immer nur für Mitarbeiter, egal was ich hier einstelle…“), obwohl die Einstellung weiterhin den Zugriff auf bestimmte Gruppenseiten (z. B.
/g/trust_level_0) und deren Mitgliederlisten steuert.
Ein Kommentar im relevanten Code besagt, dass dieses außergewöhnliche Verhalten dazu dient, „automatische Gruppen für alle Nicht-Mitarbeiter zu verbergen, um die Seite übersichtlicher zu gestalten“ – aber es gibt keinen Grund, diesen Mechanismus dafür zu verwenden. Ein Administrator, der die Indexseite übersichtlicher gestalten möchte, könnte einfach die Sichtbarkeit automatischer Gruppen nach eigenem Ermessen festlegen, genau wie bei jeder anderen Gruppe.
Ich schlage vor, einfach die 6 Codezeilen aus app/controllers/groups_controller.rb zu entfernen, die dieses Verhalten implementieren.
Wenn es als wichtig erachtet wird, standardmäßig eine „übersichtliche“ Indexseite zu haben für Neuinstallationen von Discourse, dann wäre ein besserer Mechanismus die Standard-Sichtbarkeitseinstellungen für Mitarbeiter für die automatischen Gruppen festzulegen, wenn sie zum ersten Mal vom System erstellt werden. den Standardfilter auf der Indexseite für Nicht-Mitarbeiter auf „nicht automatisch“ zu setzen.
(Die Sichtbarkeitseinstellung ist eine Zugriffskontrolle – der Standardwert sollte sein, was ein sinnvolles Standardzugriffsniveau darstellt, unabhängig davon, wie die Indexseite aussieht.)
Zu Ihrer Information, dieses Thema ist eine Fortsetzung der Diskussion in:


