diff options
author | RaNaN <Mast3rRaNaN@hotmail.de> | 2013-07-12 13:12:59 +0200 |
---|---|---|
committer | RaNaN <Mast3rRaNaN@hotmail.de> | 2013-07-12 13:12:59 +0200 |
commit | 3512605b8c0370905ae9e7a2adc79ddded2d8d20 (patch) | |
tree | b7a9b68ebd599ecbe96dee0ca650d120093f632b /pyload/plugins | |
parent | Merge remote-tracking branch 'origin/stable' (diff) | |
download | pyload-3512605b8c0370905ae9e7a2adc79ddded2d8d20.tar.xz |
fixed addon related bugs
Diffstat (limited to 'pyload/plugins')
-rw-r--r-- | pyload/plugins/Addon.py | 38 | ||||
-rw-r--r-- | pyload/plugins/accounts/Premium4Me.py | 32 | ||||
-rw-r--r-- | pyload/plugins/addons/MultiHoster.py | 14 |
3 files changed, 22 insertions, 62 deletions
diff --git a/pyload/plugins/Addon.py b/pyload/plugins/Addon.py index ff9c57bef..940339bfb 100644 --- a/pyload/plugins/Addon.py +++ b/pyload/plugins/Addon.py @@ -40,19 +40,6 @@ def AddEventListener(event): return f return _klass -class ConfigHandler(object): - """ Register method as config handler. - - Your method signature has to be: - def foo(value=None): - - value will be passed to use your method to set the config. - When value is None your method needs to return an interaction task for configuration. - """ - - def __new__(cls, f, *args, **kwargs): - addonManager.addConfigHandler(class_name(f.__module__), f.func_name) - return f def AddonHandler(desc, media=None): """ Register Handler for files, packages, or arbitrary callable methods. @@ -90,10 +77,6 @@ class Addon(Base): #: automatically register event listeners for functions, attribute will be deleted don't use it yourself event_map = None - # Alternative to event_map - #: List of events the plugin can handle, name the functions exactly like eventname. - event_list = None # dont make duplicate entries in event_map - #: periodic call interval in seconds interval = 60 @@ -114,22 +97,15 @@ class Addon(Base): for event, funcs in self.event_map.iteritems(): if type(funcs) in (list, tuple): for f in funcs: - self.evm.addEvent(event, getattr(self,f)) + self.evm.listenTo(event, getattr(self,f)) else: - self.evm.addEvent(event, getattr(self,funcs)) + self.evm.listenTo(event, getattr(self,funcs)) #delete for various reasons self.event_map = None - if self.event_list: - for f in self.event_list: - self.evm.addEvent(f, getattr(self,f)) - - self.event_list = None - self.initPeriodical() self.init() - self.setup() def initPeriodical(self): if self.interval >=1: @@ -158,10 +134,6 @@ class Addon(Base): def init(self): pass - def setup(self): - """ more init stuff if needed """ - pass - def activate(self): """ Used to activate the addon """ if has_method(self.__class__, "coreReady"): @@ -196,10 +168,4 @@ class Addon(Base): pass def packageFinished(self, pypack): - pass - - def beforeReconnecting(self, ip): - pass - - def afterReconnecting(self, ip): pass
\ No newline at end of file diff --git a/pyload/plugins/accounts/Premium4Me.py b/pyload/plugins/accounts/Premium4Me.py index de1538e4a..fbca3ce84 100644 --- a/pyload/plugins/accounts/Premium4Me.py +++ b/pyload/plugins/accounts/Premium4Me.py @@ -1,27 +1,23 @@ -# -*- coding: utf-8 -*- -from module.plugins.MultiHoster import MultiHoster +from module.plugins.Account import Account -class Premium4Me(MultiHoster): +class Premium4Me(Account): __name__ = "Premium4Me" - __version__ = "0.10" + __version__ = "0.03" __type__ = "account" - __description__ = """Premium4.me account plugin""" - __author_name__ = ("RaNaN", "zoidberg") - __author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz") + __description__ = """Premium.to account plugin""" + __author_name__ = ("RaNaN", "zoidberg", "stickell") + __author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz", "l.stickell@yahoo.it") - def loadAccountInfo(self, req): - traffic = req.load("http://premium4.me/api/traffic.php?authcode=%s" % self.authcode) + def loadAccountInfo(self, user, req): + traffic = req.load("http://premium.to/api/traffic.php?authcode=%s" % self.authcode) - account_info = {"trafficleft": int(traffic) / 1024, "validuntil": -1} + account_info = {"trafficleft": int(traffic) / 1024, + "validuntil": -1} return account_info - def login(self, req): - self.authcode = req.load("http://premium4.me/api/getauthcode.php?username=%s&password=%s" % (self.loginname, self.password)).strip() - - if "wrong username" in self.authcode: - self.wrongPassword() + def login(self, user, data, req): + self.authcode = req.load("http://premium.to/api/getauthcode.php?username=%s&password=%s" % (user, data["password"])).strip() - def loadHosterList(self, req): - page = req.load("http://premium4.me/api/hosters.php?authcode=%s" % self.authcode) - return [x.strip() for x in page.replace("\"", "").split(";")]
\ No newline at end of file + if "wrong username" in self.authcode: + self.wrongPassword()
\ No newline at end of file diff --git a/pyload/plugins/addons/MultiHoster.py b/pyload/plugins/addons/MultiHoster.py index 825085df8..b7873a3a2 100644 --- a/pyload/plugins/addons/MultiHoster.py +++ b/pyload/plugins/addons/MultiHoster.py @@ -4,14 +4,15 @@ import re from types import MethodType -from module.plugins.MultiHoster import MultiHoster as MultiHosterAccount, normalize -from module.plugins.Addon import Addon, AddEventListener -from module.plugins.PluginManager import PluginTuple +from pyload.plugins.MultiHoster import MultiHoster as MultiHosterAccount, normalize +from pyload.plugins.Addon import Addon, AddEventListener +from pyload.PluginManager import PluginTuple + class MultiHoster(Addon): __version__ = "0.1" __internal__ = True - __description__ = "Gives ability to use MultiHoster services. You need to add your account first." + __description__ = "Gives ability to use MultiHoster services." __config__ = [] __author_mail__ = ("pyLoad Team",) __author_mail__ = ("support@pyload.org",) @@ -25,7 +26,7 @@ class MultiHoster(Addon): def addHoster(self, account): - self.logDebug("New MultiHoster %s" % account.__name__) + self.logInfo(_("Added MultiHoster %s") % account.__name__) pluginMap = {} for name in self.core.pluginManager.getPlugins("hoster").keys(): @@ -65,12 +66,10 @@ class MultiHoster(Addon): hoster[account.__name__] = new - @AddEventListener("account:deleted") def refreshAccounts(self, plugin=None, user=None): self.plugins = {} - for name, account in self.core.accountManager.iterAccounts(): if isinstance(account, MultiHosterAccount) and account.isUsable(): self.addHoster(account) @@ -94,7 +93,6 @@ class MultiHoster(Addon): pm = self.core.pluginManager pm.getPlugin = MethodType(getPlugin, pm, object) - def deactivate(self): #restore state pm = self.core.pluginManager |