[somebot] WS:ModRemovePostTextEnforcer
authorSomeone <someone@somenet.org>
Wed, 8 Dec 2021 18:38:38 +0000 (19:38 +0100)
committerSomeone <someone@somenet.org>
Wed, 8 Dec 2021 18:38:38 +0000 (19:38 +0100)
modules/WSModRemovePostTextEnforcer.py [new file with mode: 0644]

diff --git a/modules/WSModRemovePostTextEnforcer.py b/modules/WSModRemovePostTextEnforcer.py
new file mode 100644 (file)
index 0000000..a3ba617
--- /dev/null
@@ -0,0 +1,25 @@
+# Mattermost Bot module.
+#  Copyright (c) 2016-2021 by Someone <someone@somenet.org> (aka. Jan Vales <jan@jvales.net>)
+#  published under MIT-License
+
+import json
+import re
+
+from AbstractWSHandler import *
+class WSModRemovePostTextEnforcer(AbstractWSHandler):
+    NAME = "mod-remove-post-text-enforcer"
+
+
+    def on_WS_EVENT(self, data):
+        post = json.loads(data["data"]["post"])
+        if "has_reactions" not in post:
+            post["has_reactions"] = False
+        #post = self.bot.api.get_post(post["id"])
+
+        if "somebot_removed_post_text" in post["props"] and post["message"] != "":
+            self.bot.api.update_post(post["id"], message=None, is_pinned=post["is_pinned"], has_reactions=post["has_reactions"], props=post["props"])
+            self.bot.debug_chan("``WSModRemovePostTextEnforcer: Post edit-attempt reverted. Post-id: ``**``"+post["id"]+"``**`` Text was:``\n\n----\n\n"+post["message"])
+        else:
+            import pprint
+            pprint.pprint(data)
+            self.bot.command_stats_inc("ws::"+evtype+"::"+self.NAME, amount=-1)