From 283231ac6ec2bf6d1831ed28fbf8b41eddbdfff8 Mon Sep 17 00:00:00 2001 From: shortcutme Date: Mon, 25 Jun 2018 15:13:56 +0200 Subject: [PATCH] Remove renamed Mute plugin --- plugins/Mute/MutePlugin.py | 160 ---------------------------- plugins/Mute/__init__.py | 1 - plugins/Mute/languages/es.json | 6 -- plugins/Mute/languages/hu.json | 6 -- plugins/Mute/languages/it.json | 6 -- plugins/Mute/languages/pt-br.json | 6 -- plugins/Mute/languages/zh-tw.json | 6 -- plugins/Mute/languages/zh.json | 6 -- plugins/Mute/media/blacklisted.html | 64 ----------- plugins/Mute/media/js/ZeroFrame.js | 93 ---------------- 10 files changed, 354 deletions(-) delete mode 100644 plugins/Mute/MutePlugin.py delete mode 100644 plugins/Mute/__init__.py delete mode 100644 plugins/Mute/languages/es.json delete mode 100644 plugins/Mute/languages/hu.json delete mode 100644 plugins/Mute/languages/it.json delete mode 100644 plugins/Mute/languages/pt-br.json delete mode 100644 plugins/Mute/languages/zh-tw.json delete mode 100644 plugins/Mute/languages/zh.json delete mode 100644 plugins/Mute/media/blacklisted.html delete mode 100644 plugins/Mute/media/js/ZeroFrame.js diff --git a/plugins/Mute/MutePlugin.py b/plugins/Mute/MutePlugin.py deleted file mode 100644 index dfae5dfa..00000000 --- a/plugins/Mute/MutePlugin.py +++ /dev/null @@ -1,160 +0,0 @@ -import time -import json -import os -import re - -from Plugin import PluginManager -from Translate import Translate -from Config import config -from util import helper - - -if os.path.isfile("%s/mutes.json" % config.data_dir): - try: - data = json.load(open("%s/mutes.json" % config.data_dir)) - mutes = data.get("mutes", {}) - site_blacklist = data.get("site_blacklist", {}) - except Exception as err: - mutes = {} - site_blacklist = {} -else: - open("%s/mutes.json" % config.data_dir, "w").write('{"mutes": {}, "site_blacklist": {}}') - mutes = {} - site_blacklist = {} - -if "_" not in locals(): - _ = Translate("plugins/Mute/languages/") - - -@PluginManager.registerTo("UiWebsocket") -class UiWebsocketPlugin(object): - # Search and remove or readd files of an user - def changeDb(self, auth_address, action): - self.log.debug("Mute action %s on user %s" % (action, auth_address)) - res = self.site.content_manager.contents.db.execute( - "SELECT * FROM content LEFT JOIN site USING (site_id) WHERE inner_path LIKE :inner_path", - {"inner_path": "%%/%s/%%" % auth_address} - ) - for row in res: - site = self.server.sites.get(row["address"]) - if not site: - continue - dir_inner_path = helper.getDirname(row["inner_path"]) - for file_name in site.storage.walk(dir_inner_path): - if action == "remove": - site.storage.onUpdated(dir_inner_path + file_name, False) - else: - site.storage.onUpdated(dir_inner_path + file_name) - site.onFileDone(dir_inner_path + file_name) - - def cbMuteAdd(self, to, auth_address, cert_user_id, reason): - mutes[auth_address] = {"cert_user_id": cert_user_id, "reason": reason, "source": self.site.address, "date_added": time.time()} - self.saveMutes() - self.changeDb(auth_address, "remove") - self.response(to, "ok") - - def actionMuteAdd(self, to, auth_address, cert_user_id, reason): - if "ADMIN" in self.getPermissions(to): - self.cbMuteAdd(to, auth_address, cert_user_id, reason) - else: - self.cmd( - "confirm", - [_["Hide all content from %s?"] % cert_user_id, _["Mute"]], - lambda (res): self.cbMuteAdd(to, auth_address, cert_user_id, reason) - ) - - def cbMuteRemove(self, to, auth_address): - del mutes[auth_address] - self.saveMutes() - self.changeDb(auth_address, "load") - self.response(to, "ok") - - def actionMuteRemove(self, to, auth_address): - if "ADMIN" in self.getPermissions(to): - self.cbMuteRemove(to, auth_address) - else: - self.cmd( - "confirm", - [_["Unmute %s?"] % mutes[auth_address]["cert_user_id"], _["Unmute"]], - lambda (res): self.cbMuteRemove(to, auth_address) - ) - - def actionMuteList(self, to): - if "ADMIN" in self.getPermissions(to): - self.response(to, mutes) - else: - return self.response(to, {"error": "Only ADMIN sites can list mutes"}) - - # Blacklist - def actionBlacklistAdd(self, to, site_address, reason=None): - if "ADMIN" not in self.getPermissions(to): - return self.response(to, {"error": "Forbidden, only admin sites can add to blacklist"}) - site_blacklist[site_address] = {"date_added": time.time(), "reason": reason} - self.saveMutes() - self.response(to, "ok") - - def actionBlacklistRemove(self, to, site_address): - if "ADMIN" not in self.getPermissions(to): - return self.response(to, {"error": "Forbidden, only admin sites can remove from blacklist"}) - del site_blacklist[site_address] - self.saveMutes() - self.response(to, "ok") - - def actionBlacklistList(self, to): - if "ADMIN" in self.getPermissions(to): - self.response(to, site_blacklist) - else: - return self.response(to, {"error": "Only ADMIN sites can list blacklists"}) - - # Write mutes and blacklist to json file - def saveMutes(self): - helper.atomicWrite("%s/mutes.json" % config.data_dir, json.dumps({"mutes": mutes, "site_blacklist": site_blacklist}, indent=2, sort_keys=True)) - - -@PluginManager.registerTo("SiteStorage") -class SiteStoragePlugin(object): - def updateDbFile(self, inner_path, file=None, cur=None): - if file is not False: # File deletion always allowed - # Find for bitcoin addresses in file path - matches = re.findall("/(1[A-Za-z0-9]{26,35})/", inner_path) - # Check if any of the adresses are in the mute list - for auth_address in matches: - if auth_address in mutes: - self.log.debug("Mute match: %s, ignoring %s" % (auth_address, inner_path)) - return False - - return super(SiteStoragePlugin, self).updateDbFile(inner_path, file=file, cur=cur) - - -@PluginManager.registerTo("UiRequest") -class UiRequestPlugin(object): - def actionWrapper(self, path, extra_headers=None): - match = re.match("/(?P
[A-Za-z0-9\._-]+)(?P/.*|$)", path) - if not match: - return False - address = match.group("address") - - if self.server.site_manager.get(address): # Site already exists - return super(UiRequestPlugin, self).actionWrapper(path, extra_headers) - - if self.server.site_manager.isDomain(address): - address = self.server.site_manager.resolveDomain(address) - - if address in site_blacklist: - site = self.server.site_manager.get(config.homepage) - if not extra_headers: - extra_headers = {} - self.sendHeader(extra_headers=extra_headers) - return iter([super(UiRequestPlugin, self).renderWrapper( - site, path, "uimedia/plugins/mute/blacklisted.html?address=" + address, - "Blacklisted site", extra_headers, show_loadingscreen=False - )]) - else: - return super(UiRequestPlugin, self).actionWrapper(path, extra_headers) - - def actionUiMedia(self, path, *args, **kwargs): - if path.startswith("/uimedia/plugins/mute/"): - file_path = path.replace("/uimedia/plugins/mute/", "plugins/Mute/media/") - return self.actionFile(file_path) - else: - return super(UiRequestPlugin, self).actionUiMedia(path) diff --git a/plugins/Mute/__init__.py b/plugins/Mute/__init__.py deleted file mode 100644 index f9d1081c..00000000 --- a/plugins/Mute/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import MutePlugin \ No newline at end of file diff --git a/plugins/Mute/languages/es.json b/plugins/Mute/languages/es.json deleted file mode 100644 index 732ccfd8..00000000 --- a/plugins/Mute/languages/es.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "Hide all content from %s?": "Esconder todo el contenido de %s?", - "Mute": "Silenciar", - "Unmute %s?": "Mostrar todo el contenido de %s?", - "Unmute": "Reactivar" -} diff --git a/plugins/Mute/languages/hu.json b/plugins/Mute/languages/hu.json deleted file mode 100644 index e3332db8..00000000 --- a/plugins/Mute/languages/hu.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "Hide all content from %s?": "%s tartalmaniak elrejtése?", - "Mute": "Elnémítás", - "Unmute %s?": "%s tartalmaniak megjelenítése?", - "Unmute": "Némítás visszavonása" -} diff --git a/plugins/Mute/languages/it.json b/plugins/Mute/languages/it.json deleted file mode 100644 index b0246918..00000000 --- a/plugins/Mute/languages/it.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "Hide all content from %s?": "%s Vuoi nascondere i contenuti di questo utente ?", - "Mute": "Attiva Silenzia", - "Unmute %s?": "%s Vuoi mostrare i contenuti di questo utente ?", - "Unmute": "Disattiva Silenzia" -} diff --git a/plugins/Mute/languages/pt-br.json b/plugins/Mute/languages/pt-br.json deleted file mode 100644 index fd858678..00000000 --- a/plugins/Mute/languages/pt-br.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "Hide all content from %s?": "Esconder todo conteúdo de %s?", - "Mute": "Ativar mudo", - "Unmute %s?": "Mostrar o contéudo de %s?", - "Unmute": "Desativar mudo" -} diff --git a/plugins/Mute/languages/zh-tw.json b/plugins/Mute/languages/zh-tw.json deleted file mode 100644 index 3bdb5fc0..00000000 --- a/plugins/Mute/languages/zh-tw.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "Hide all content from %s?": "屏蔽 %s 的所有內容?", - "Mute": "屏蔽", - "Unmute %s?": "對 %s 解除屏蔽?", - "Unmute": "解除屏蔽" -} diff --git a/plugins/Mute/languages/zh.json b/plugins/Mute/languages/zh.json deleted file mode 100644 index beea7e77..00000000 --- a/plugins/Mute/languages/zh.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "Hide all content from %s?": "屏蔽 %s 的所有内容?", - "Mute": "屏蔽", - "Unmute %s?": "对 %s 解除屏蔽?", - "Unmute": "解除屏蔽" -} diff --git a/plugins/Mute/media/blacklisted.html b/plugins/Mute/media/blacklisted.html deleted file mode 100644 index 5d2bf80c..00000000 --- a/plugins/Mute/media/blacklisted.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - -
-

Site blocked

-

This site is on your blacklist:

-
-
Too much image
-
on 2015-01-25 12:32:11
-
-
Remove from blacklist
-
- - - - - - \ No newline at end of file diff --git a/plugins/Mute/media/js/ZeroFrame.js b/plugins/Mute/media/js/ZeroFrame.js deleted file mode 100644 index f3e2214b..00000000 --- a/plugins/Mute/media/js/ZeroFrame.js +++ /dev/null @@ -1,93 +0,0 @@ -const CMD_INNER_READY = 'innerReady' -const CMD_RESPONSE = 'response' -const CMD_WRAPPER_READY = 'wrapperReady' -const CMD_PING = 'ping' -const CMD_PONG = 'pong' -const CMD_WRAPPER_OPENED_WEBSOCKET = 'wrapperOpenedWebsocket' -const CMD_WRAPPER_CLOSE_WEBSOCKET = 'wrapperClosedWebsocket' - -class ZeroFrame { - constructor(url) { - this.url = url - this.waiting_cb = {} - this.wrapper_nonce = document.location.href.replace(/.*wrapper_nonce=([A-Za-z0-9]+).*/, "$1") - this.connect() - this.next_message_id = 1 - this.init() - } - - init() { - return this - } - - connect() { - this.target = window.parent - window.addEventListener('message', e => this.onMessage(e), false) - this.cmd(CMD_INNER_READY) - } - - onMessage(e) { - let message = e.data - let cmd = message.cmd - if (cmd === CMD_RESPONSE) { - if (this.waiting_cb[message.to] !== undefined) { - this.waiting_cb[message.to](message.result) - } - else { - this.log("Websocket callback not found:", message) - } - } else if (cmd === CMD_WRAPPER_READY) { - this.cmd(CMD_INNER_READY) - } else if (cmd === CMD_PING) { - this.response(message.id, CMD_PONG) - } else if (cmd === CMD_WRAPPER_OPENED_WEBSOCKET) { - this.onOpenWebsocket() - } else if (cmd === CMD_WRAPPER_CLOSE_WEBSOCKET) { - this.onCloseWebsocket() - } else { - this.onRequest(cmd, message) - } - } - - onRequest(cmd, message) { - this.log("Unknown request", message) - } - - response(to, result) { - this.send({ - cmd: CMD_RESPONSE, - to: to, - result: result - }) - } - - cmd(cmd, params={}, cb=null) { - this.send({ - cmd: cmd, - params: params - }, cb) - } - - send(message, cb=null) { - message.wrapper_nonce = this.wrapper_nonce - message.id = this.next_message_id - this.next_message_id++ - this.target.postMessage(message, '*') - if (cb) { - this.waiting_cb[message.id] = cb - } - } - - log(...args) { - console.log.apply(console, ['[ZeroFrame]'].concat(args)) - } - - onOpenWebsocket() { - this.log('Websocket open') - } - - onCloseWebsocket() { - this.log('Websocket close') - } -} -