diff options
Diffstat (limited to 'module/plugins/hoster/ZeveraCom.py')
-rw-r--r-- | module/plugins/hoster/ZeveraCom.py | 44 |
1 files changed, 18 insertions, 26 deletions
diff --git a/module/plugins/hoster/ZeveraCom.py b/module/plugins/hoster/ZeveraCom.py index 93959637c..665b64789 100644 --- a/module/plugins/hoster/ZeveraCom.py +++ b/module/plugins/hoster/ZeveraCom.py @@ -1,42 +1,34 @@ # -*- coding: utf-8 -*- -from pyload.plugin.Hoster import Hoster +import re +from urlparse import urljoin -class ZeveraCom(Hoster): +from module.plugins.internal.MultiHoster import MultiHoster, create_getInfo + + +class ZeveraCom(MultiHoster): __name__ = "ZeveraCom" __type__ = "hoster" - __version__ = "0.21" + __version__ = "0.28" - __pattern__ = r'http://(?:www\.)?zevera\.com/.*' + __pattern__ = r'https?://(?:www\.)zevera\.com/(getFiles\.ashx|Members/download\.ashx)\?.*ourl=.+' - __description__ = """Zevera.com hoster plugin""" + __description__ = """Zevera.com multi-hoster plugin""" __license__ = "GPLv3" - __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] - - - def setup(self): - self.resumeDownload = True - self.multiDL = True - self.chunkLimit = 1 + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("Walter Purcaro", "vuolter@gmail.com")] - def process(self, pyfile): - if not self.account: - self.logError(_("Please enter your %s account or deactivate this plugin") % "zevera.com") - self.fail(_("No zevera.com account provided")) + def handlePremium(self, pyfile): + self.link = "https://%s/getFiles.ashx?ourl=%s" % (self.account.HOSTER_DOMAIN, pyfile.url) - self.logDebug("Old URL: %s" % pyfile.url) - if self.account.getAPIData(self.req, cmd="checklink", olink=pyfile.url) != "Alive": - self.fail(_("Offline or not downloadable - contact Zevera support")) + def checkFile(self): + if self.checkDownload({"error": 'action="ErrorDownload.aspx'}): + self.fail(_("Error response received")) - header = self.account.getAPIData(self.req, just_header=True, cmd="generatedownloaddirect", olink=pyfile.url) - if not "location" in header: - self.fail(_("Unable to initialize download")) + return super(ZeveraCom, self).checkFile() - self.download(header['location'], disposition=True) - check = self.checkDownload({"error": 'action="ErrorDownload.aspx'}) - if check == "error": - self.fail(_("Error response received - contact Zevera support")) +getInfo = create_getInfo(ZeveraCom) |