Wenn ich das richtig verstanden habe, funktioniert dies zumindest so, wie es der Code “beabsichtigt”:
TL3 kann nur dann nicht bearbeiten, wenn das Thema archiviert ist oder es sich um eine PN handelt.
Ich denke, du kannst trusted_users_can_edit_others ändern, wenn du dieses Verhalten deaktivieren möchtest. AFAIK ist der Standardwert für trusted_users_can_edit_others nicht false, um eine konsistente Verhaltensweise mit dem Zustand vor der Einführung dieser Einstellung beizubehalten.
Was ist dann der Zweck des Sperrens von Beiträgen? Es gibt keinen. Oder ich habe keinen gefunden, weshalb die Funktion entweder veraltet, dysfunktional oder zumindest verwirrend ist.
Der Text sagt eindeutig: „Ein Mitarbeiter hat diesen Beitrag vor Änderungen gesperrt.
Der Topic Guardian erlaubt es TL3- und TL4-Nutzern, einen gesperrten Thread/Eintrag (den ersten Eintrag) zu bearbeiten, aber der Post Guardian (siehe Code unten) verhindert, dass TL3- und TL4-Nutzer einen gesperrten Nicht-OP-Eintrag bearbeiten:
def can_edit_post?(post)
if Discourse.static_doc_topic_ids.include?(post.topic_id) && !is_admin?
return false
end
return true if is_admin?
# Nur Mitarbeiter dürfen gesperrte Beiträge bearbeiten
return false if post.locked? && !is_staff?
@eviltrout, ist das beabsichtigt? Logischer (und als gesperrte Funktion wertvoller) wäre es meiner Meinung nach, wenn der Topic Guardian genauso funktionieren würde wie der Post Guardian, der den gesperrten Zustand respektiert. Wie gesagt, ich bin damit einverstanden, dass TL3- und TL4-Nutzer nicht-gesperrte Beiträge bearbeiten können, aber keine gesperrten (dies schließt den ersten Eintrag ein).
Das habe ich bereits getan. Aber allein der Blick darauf, wie beide Wächter den gesperrten Zustand unterschiedlich behandeln, ist bereits verwirrend.
Es sollte so sein, wie der Post-Wächter den gesperrten Zustand handhabt, also: # Nur Mitarbeiter dürfen einen gesperrten Beitrag bearbeiten.
Gemeint ist: Derzeit sind gesperrte Beiträge, die nicht die erste Antwort sind, wirklich gesperrt (Benutzer mit TL3+ können sie nicht bearbeiten/ändern), während gesperrte OP-Beiträge überhaupt nicht gesperrt sind (außer für den OP können Benutzer mit TL3+ sie immer noch bearbeiten/ändern). Das ergibt für mich überhaupt keinen Sinn, insbesondere da weder TL3 noch TL4 die Berechtigung haben, einen Beitrag oder ein Thema zu sperren.
Angesichts dessen sollten auch gesperrte OPs für Benutzer mit TL3+ wirklich nicht bearbeitbar sein, trotz der Einstellung, die es ihnen erlaubt, (nicht gesperrte) Beiträge und Themen zu bearbeiten.
Das fühlt sich wirklich wie ein Fehler an, @j.jaffeux – ein gesperrter Beitrag sollte nur von Mitarbeitern bearbeitet werden können, sonst macht das doch keinen Sinn.
Ja, das ist ein Fehler, und beide Wächter sollten einen Beitrag unabhängig von der Position und der Einstellung, die TL3 und TL4 das Bearbeiten von Beiträgen erlaubt, tatsächlich sperren. Ich habe mein Bestes gegeben, um es in allen Einzelheiten zu erklären.