summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@gmail.com> 2015-03-01 18:26:23 +0100
committerGravatar Walter Purcaro <vuolter@gmail.com> 2015-03-01 18:26:23 +0100
commit85f3ecac85816f9dcbe3d20cc4e35d117526df32 (patch)
treed92853f607728e047531b8d3f642318f05c1ca9d
parentSpare code cosmetics (diff)
parent[JustPremium] Include hoster to remove (diff)
downloadpyload-85f3ecac85816f9dcbe3d20cc4e35d117526df32.tar.xz
Merge pull request #1216 from immenz/dev_JustPrem
[JustPremium] Include hoster to remove
-rw-r--r--module/plugins/hooks/JustPremium.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/module/plugins/hooks/JustPremium.py b/module/plugins/hooks/JustPremium.py
index 30a72c70f..daefbc30f 100644
--- a/module/plugins/hooks/JustPremium.py
+++ b/module/plugins/hooks/JustPremium.py
@@ -8,9 +8,10 @@ from module.plugins.Hook import Hook
class JustPremium(Hook):
__name__ = "JustPremium"
__type__ = "hook"
- __version__ = "0.21"
+ __version__ = "0.22"
- __config__ = [("excluded", "str", "Exclude hosters (comma separated)", "")]
+ __config__ = [("excluded", "str", "Exclude hosters (comma separated)", ""),
+ ("included", "str", "Include hosters (comma separated)", "")]
__description__ = """Remove not-premium links from added urls"""
__license__ = "GPLv3"
@@ -32,14 +33,18 @@ class JustPremium(Hook):
if 'new_name' in hosterdict[hoster] \
and hosterdict[hoster]['new_name'] in premiumplugins)
- #: Found at least one hoster with account or multihoster
- if not any(True for pluginname in linkdict if pluginname in premiumplugins | multihosters):
- return
-
excluded = map(lambda domain: "".join(part.capitalize() for part in re.split(r'(\.|\d+)', domain) if part != '.'),
self.getConfig('excluded').replace(' ', '').replace(',', '|').replace(';', '|').split('|'))
+ included = map(lambda domain: "".join(part.capitalize() for part in re.split(r'(\.|\d+)', domain) if part != '.'),
+ self.getConfig('included').replace(' ', '').replace(',', '|').replace(';', '|').split('|'))
+
+ hosterlist = (premiumplugins | multihosters).union(excluded).difference(included)
+
+ #: Found at least one hoster with account or multihoster
+ if not any( True for pluginname in linkdict if pluginname in hosterlist ):
+ return
- for pluginname in set(linkdict.keys()) - (premiumplugins | multihosters).union(excluded):
+ for pluginname in set(linkdict.keys()) - hosterlist:
self.logInfo(_("Remove links of plugin: %s") % pluginname)
for link in linkdict[pluginname]:
self.logDebug("Remove link: %s" % link)