Ich versuche, meine Community zur Selbstregulierung zu bringen und habe daher die meisten Schimpfwörter/sensiblen Informationen (RegEx-Phrasen) in die zensierten beobachteten Wörter eingefügt.
Ich habe jedoch festgestellt, dass Administratoren nicht benachrichtigt werden, wenn Beiträge zensiert werden. Idealerweise möchten wir die Anzahl der Male zählen, die ein Benutzer ein schlechtes Wort/eine schlechte Phrase verwendet hat, damit wir ihn bei zu vielen unangemessenen Beiträgen zum Schweigen bringen können.
Zählt Discourse zensierte Beiträge pro Benutzer/wie können Administratoren für zensierte Beiträge benachrichtigt werden?
advanced_filter(/^status:open$/) do |posts|
advanced_filter(/^status:closed$/) do |posts|
advanced_filter(/^status:archived$/) do |posts|
advanced_filter(/^status:noreplies$/) do |posts|
advanced_filter(/^status:single_user$/) do |posts|
advanced_filter(/^in:first|^f$/) do |posts|
advanced_filter(/^in:pinned$/) do |posts|
advanced_filter(/^in:unpinned$/) do |posts|
advanced_filter(/^in:(likes|bookmarks)/) do |posts, match|
advanced_filter(/^in:posted/) do |posts|
advanced_filter(/^in:seen$/) do |posts|
advanced_filter(/^in:unseen$/) do |posts|
advanced_filter(/^in:wiki$/) do |posts, match|
advanced_filter(/^posts_count:(\d+)/) do |posts, match|
advanced_filter(/^min_post_count:(\d+)/) do |posts, match|
advanced_filter(/^badge:()/) do |posts, match|
advanced_filter(/^with:images/) do |posts|
advanced_filter(/^#([\p{L}0-9-:=]+)/) do |posts, match|
advanced_filter(/^group:(.+)/) do |posts, match|
advanced_filter(/^user:(.+)/) do |posts, match|
advanced_filter(/^@([a-zA-Z0-9_-.]+)/) do |posts, match|
advanced_filter(/^before:()/) do |posts, match|
advanced_filter(/^after:(.*)/) do |posts, match|
advanced_filter(/^tags?:([\p{L}0-9,-+]+)/) do |posts, match|
advanced_filter(/^-tags?:([\p{L}0-9,-<em>+]+)/) do |posts, match|
advanced_filter(/^filetypes?:([a-zA-Z0-9,-_]+)$/) do |posts, match|
Einer unserer SQL-Zauberer erstellt eine weitaus ausgefeiltere Abfrage, die die genaue Position des zensierten Wortes findet. Sie funktioniert irgendwie, aber er murrt ständig, dass raw und cooked nicht die gleiche Länge haben… was uns eine neue Wertschätzung dafür gibt, wie schwierig es ist, die Ergebnisse dessen, was durch beobachtete Wörter gefunden wurde, zu speichern und insbesondere zu verwalten.
Nein, ich glaube, es war einfach zu albtraumhaft, das zensierte Wort in der Markdown-Version im Vergleich zur Live-Version zu finden, und es war einfach einfacher, es mit den Augen zu scannen (im Moment für unsere neue Plattform). Wenn jemand eine andere Methode gefunden hat, lassen Sie es mich bitte wissen!