From 6632ded30de12bc16644b26de2605ec6b3bdd42a Mon Sep 17 00:00:00 2001
From: Walter Purcaro <vuolter@gmail.com>
Date: Thu, 9 Oct 2014 13:12:12 +0200
Subject: ShareRapidCom -> MegaRapidCz

---
 module/plugins/accounts/MegaRapidCz.py        | 54 +++++++++++++++++++++
 module/plugins/accounts/ShareRapidCom.py      | 54 ---------------------
 module/plugins/crypter/MegaRapidCzFolder.py   | 18 +++++++
 module/plugins/crypter/ShareRapidComFolder.py | 18 -------
 module/plugins/hoster/MegaRapidCz.py          | 70 +++++++++++++++++++++++++++
 module/plugins/hoster/ShareRapidCom.py        | 70 ---------------------------
 6 files changed, 142 insertions(+), 142 deletions(-)
 create mode 100644 module/plugins/accounts/MegaRapidCz.py
 delete mode 100644 module/plugins/accounts/ShareRapidCom.py
 create mode 100644 module/plugins/crypter/MegaRapidCzFolder.py
 delete mode 100644 module/plugins/crypter/ShareRapidComFolder.py
 create mode 100644 module/plugins/hoster/MegaRapidCz.py
 delete mode 100644 module/plugins/hoster/ShareRapidCom.py

diff --git a/module/plugins/accounts/MegaRapidCz.py b/module/plugins/accounts/MegaRapidCz.py
new file mode 100644
index 000000000..5b7b41e2b
--- /dev/null
+++ b/module/plugins/accounts/MegaRapidCz.py
@@ -0,0 +1,54 @@
+# -*- coding: utf-8 -*-
+
+import re
+
+from time import mktime, strptime
+from module.plugins.Account import Account
+
+
+class MegaRapidCz(Account):
+    __name__ = "MegaRapidCz"
+    __type__ = "account"
+    __version__ = "0.34"
+
+    __description__ = """MegaRapid.cz account plugin"""
+    __license__ = "GPLv3"
+    __authors__ = [("MikyWoW", "mikywow@seznam.cz"),
+                   ("zoidberg", "zoidberg@mujmail.cz")]
+
+
+    login_timeout = 60
+
+
+    def loadAccountInfo(self, user, req):
+        src = req.load("http://megarapid.cz/mujucet/", decode=True)
+
+        m = re.search(ur'<td>Max. počet paralelních stahování: </td><td>(\d+)', src)
+        if m:
+            data = self.getAccountData(user)
+            data['options']['limitDL'] = [int(m.group(1))]
+
+        m = re.search(ur'<td>Paušální stahování aktivní. Vyprší </td><td><strong>(.*?)</strong>', src)
+        if m:
+            validuntil = mktime(strptime(m.group(1), "%d.%m.%Y - %H:%M"))
+            return {"premium": True, "trafficleft": -1, "validuntil": validuntil}
+
+        m = re.search(r'<tr><td>Kredit</td><td>(.*?) GiB', src)
+        if m:
+            trafficleft = float(m.group(1)) * (1 << 20)
+            return {"premium": True, "trafficleft": trafficleft, "validuntil": -1}
+
+        return {"premium": False, "trafficleft": None, "validuntil": None}
+
+    def login(self, user, data, req):
+        htm = req.load("http://megarapid.cz/prihlaseni/", cookies=True)
+        if "Heslo:" in htm:
+            start = htm.index('id="inp_hash" name="hash" value="')
+            htm = htm[start + 33:]
+            hashes = htm[0:32]
+            htm = req.load("http://megarapid.cz/prihlaseni/",
+                           post={"hash": hashes,
+                                 "login": user,
+                                 "pass1": data['password'],
+                                 "remember": 0,
+                                 "sbmt": u"Přihlásit"}, cookies=True)
diff --git a/module/plugins/accounts/ShareRapidCom.py b/module/plugins/accounts/ShareRapidCom.py
deleted file mode 100644
index 62a0067d5..000000000
--- a/module/plugins/accounts/ShareRapidCom.py
+++ /dev/null
@@ -1,54 +0,0 @@
-# -*- coding: utf-8 -*-
-
-import re
-
-from time import mktime, strptime
-from module.plugins.Account import Account
-
-
-class ShareRapidCom(Account):
-    __name__ = "ShareRapidCom"
-    __type__ = "account"
-    __version__ = "0.34"
-
-    __description__ = """MegaRapid.cz account plugin"""
-    __license__ = "GPLv3"
-    __authors__ = [("MikyWoW", "mikywow@seznam.cz"),
-                   ("zoidberg", "zoidberg@mujmail.cz")]
-
-
-    login_timeout = 60
-
-
-    def loadAccountInfo(self, user, req):
-        src = req.load("http://megarapid.cz/mujucet/", decode=True)
-
-        m = re.search(ur'<td>Max. počet paralelních stahování: </td><td>(\d+)', src)
-        if m:
-            data = self.getAccountData(user)
-            data['options']['limitDL'] = [int(m.group(1))]
-
-        m = re.search(ur'<td>Paušální stahování aktivní. Vyprší </td><td><strong>(.*?)</strong>', src)
-        if m:
-            validuntil = mktime(strptime(m.group(1), "%d.%m.%Y - %H:%M"))
-            return {"premium": True, "trafficleft": -1, "validuntil": validuntil}
-
-        m = re.search(r'<tr><td>Kredit</td><td>(.*?) GiB', src)
-        if m:
-            trafficleft = float(m.group(1)) * (1 << 20)
-            return {"premium": True, "trafficleft": trafficleft, "validuntil": -1}
-
-        return {"premium": False, "trafficleft": None, "validuntil": None}
-
-    def login(self, user, data, req):
-        htm = req.load("http://megarapid.cz/prihlaseni/", cookies=True)
-        if "Heslo:" in htm:
-            start = htm.index('id="inp_hash" name="hash" value="')
-            htm = htm[start + 33:]
-            hashes = htm[0:32]
-            htm = req.load("http://megarapid.cz/prihlaseni/",
-                           post={"hash": hashes,
-                                 "login": user,
-                                 "pass1": data['password'],
-                                 "remember": 0,
-                                 "sbmt": u"Přihlásit"}, cookies=True)
diff --git a/module/plugins/crypter/MegaRapidCzFolder.py b/module/plugins/crypter/MegaRapidCzFolder.py
new file mode 100644
index 000000000..a9d6a2dc6
--- /dev/null
+++ b/module/plugins/crypter/MegaRapidCzFolder.py
@@ -0,0 +1,18 @@
+# -*- coding: utf-8 -*-
+
+from module.plugins.internal.SimpleCrypter import SimpleCrypter
+
+
+class MegaRapidCzFolder(SimpleCrypter):
+    __name__ = "MegaRapidCzFolder"
+    __type__ = "crypter"
+    __version__ = "0.02"
+
+    __pattern__ = r'http://(?:www\.)?(share|mega)rapid\.cz/slozka/\d+/\w+'
+
+    __description__ = """Share-Rapid.com folder decrypter plugin"""
+    __license__ = "GPLv3"
+    __authors__ = [("zoidberg", "zoidberg@mujmail.cz")]
+
+
+    LINK_PATTERN = r'<td class="soubor"[^>]*><a href="([^"]+)">'
diff --git a/module/plugins/crypter/ShareRapidComFolder.py b/module/plugins/crypter/ShareRapidComFolder.py
deleted file mode 100644
index 605a63a1f..000000000
--- a/module/plugins/crypter/ShareRapidComFolder.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# -*- coding: utf-8 -*-
-
-from module.plugins.internal.SimpleCrypter import SimpleCrypter
-
-
-class ShareRapidComFolder(SimpleCrypter):
-    __name__ = "ShareRapidComFolder"
-    __type__ = "crypter"
-    __version__ = "0.01"
-
-    __pattern__ = r'http://(?:www\.)?((share(-?rapid\.(biz|com|cz|info|eu|net|org|pl|sk)|-(central|credit|free|net)\.cz|-ms\.net)|(s-?rapid|rapids)\.(cz|sk))|(e-stahuj|mediatack|premium-rapidshare|rapidshare-premium|qiuck)\.cz|kadzet\.com|stahuj-zdarma\.eu|strelci\.net|universal-share\.com)/(slozka/.+)'
-
-    __description__ = """Share-Rapid.com folder decrypter plugin"""
-    __license__ = "GPLv3"
-    __authors__ = [("zoidberg", "zoidberg@mujmail.cz")]
-
-
-    LINK_PATTERN = r'<td class="soubor"[^>]*><a href="([^"]+)">'
diff --git a/module/plugins/hoster/MegaRapidCz.py b/module/plugins/hoster/MegaRapidCz.py
new file mode 100644
index 000000000..d36db5e7c
--- /dev/null
+++ b/module/plugins/hoster/MegaRapidCz.py
@@ -0,0 +1,70 @@
+# -*- coding: utf-8 -*-
+
+import re
+
+from pycurl import HTTPHEADER
+
+from module.network.RequestFactory import getRequest
+from module.plugins.internal.SimpleHoster import SimpleHoster, parseFileInfo
+
+
+def getInfo(urls):
+    h = getRequest()
+    h.c.setopt(HTTPHEADER,
+               ["Accept: text/html",
+                "User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0"])
+    for url in urls:
+        html = h.load(url, decode=True)
+        file_info = parseFileInfo(MegaRapidCz, url, html)
+        yield file_info
+
+
+class MegaRapidCz(SimpleHoster):
+    __name__ = "MegaRapidCz"
+    __type__ = "hoster"
+    __version__ = "0.54"
+
+    __pattern__ = r'http://(?:www\.)?(share|mega)rapid\.cz/soubor/\d+/.+'
+
+    __description__ = """MegaRapid.cz hoster plugin"""
+    __license__ = "GPLv3"
+    __authors__ = [("MikyWoW", "mikywow@seznam.cz"),
+                   ("zoidberg", "zoidberg@mujmail.cz"),
+                   ("stickell", "l.stickell@yahoo.it"),
+                   ("Walter Purcaro", "vuolter@gmail.com")]
+
+
+    FILE_NAME_PATTERN = r'<h1[^>]*><span[^>]*>(?:<a[^>]*>)?(?P<N>[^<]+)'
+    FILE_SIZE_PATTERN = r'<td class="i">Velikost:</td>\s*<td class="h"><strong>\s*(?P<S>[0-9.]+) (?P<U>[kKMG])i?B</strong></td>'
+    OFFLINE_PATTERN = ur'Nastala chyba 404|Soubor byl smazán'
+
+    FORCE_CHECK_TRAFFIC = True
+
+    LINK_PATTERN = r'<a href="([^"]+)" title="Stahnout">([^<]+)</a>'
+    ERR_LOGIN_PATTERN = ur'<div class="error_div"><strong>Stahování je přístupné pouze přihlášeným uživatelům'
+    ERR_CREDIT_PATTERN = ur'<div class="error_div"><strong>Stahování zdarma je možné jen přes náš'
+
+
+    def setup(self):
+        self.chunkLimit = 1
+
+    def handlePremium(self):
+        try:
+            self.html = self.load(self.pyfile.url, decode=True)
+        except BadHeader, e:
+            self.account.relogin(self.user)
+            self.retry(max_tries=3, reason=str(e))
+
+        m = re.search(self.LINK_PATTERN, self.html)
+        if m:
+            link = m.group(1)
+            self.logDebug("Premium link: %s" % link)
+            self.download(link, disposition=True)
+        else:
+            if re.search(self.ERR_LOGIN_PATTERN, self.html):
+                self.relogin(self.user)
+                self.retry(max_tries=3, reason="User login failed")
+            elif re.search(self.ERR_CREDIT_PATTERN, self.html):
+                self.fail("Not enough credit left")
+            else:
+                self.fail("Download link not found")
diff --git a/module/plugins/hoster/ShareRapidCom.py b/module/plugins/hoster/ShareRapidCom.py
deleted file mode 100644
index 9b80a9914..000000000
--- a/module/plugins/hoster/ShareRapidCom.py
+++ /dev/null
@@ -1,70 +0,0 @@
-# -*- coding: utf-8 -*-
-
-import re
-
-from pycurl import HTTPHEADER
-
-from module.network.RequestFactory import getRequest
-from module.plugins.internal.SimpleHoster import SimpleHoster, parseFileInfo
-
-
-def getInfo(urls):
-    h = getRequest()
-    h.c.setopt(HTTPHEADER,
-               ["Accept: text/html",
-                "User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0"])
-    for url in urls:
-        html = h.load(url, decode=True)
-        file_info = parseFileInfo(ShareRapidCom, url, html)
-        yield file_info
-
-
-class ShareRapidCom(SimpleHoster):
-    __name__ = "ShareRapidCom"
-    __type__ = "hoster"
-    __version__ = "0.54"
-
-    __pattern__ = r'http://(?:www\.)?(share|mega)rapid\.cz/soubor/\d+/.+'
-
-    __description__ = """MegaRapid.cz hoster plugin"""
-    __license__ = "GPLv3"
-    __authors__ = [("MikyWoW", "mikywow@seznam.cz"),
-                   ("zoidberg", "zoidberg@mujmail.cz"),
-                   ("stickell", "l.stickell@yahoo.it"),
-                   ("Walter Purcaro", "vuolter@gmail.com")]
-
-
-    FILE_NAME_PATTERN = r'<h1[^>]*><span[^>]*>(?:<a[^>]*>)?(?P<N>[^<]+)'
-    FILE_SIZE_PATTERN = r'<td class="i">Velikost:</td>\s*<td class="h"><strong>\s*(?P<S>[0-9.]+) (?P<U>[kKMG])i?B</strong></td>'
-    OFFLINE_PATTERN = ur'Nastala chyba 404|Soubor byl smazán'
-
-    FORCE_CHECK_TRAFFIC = True
-
-    LINK_PATTERN = r'<a href="([^"]+)" title="Stahnout">([^<]+)</a>'
-    ERR_LOGIN_PATTERN = ur'<div class="error_div"><strong>Stahování je přístupné pouze přihlášeným uživatelům'
-    ERR_CREDIT_PATTERN = ur'<div class="error_div"><strong>Stahování zdarma je možné jen přes náš'
-
-
-    def setup(self):
-        self.chunkLimit = 1
-
-    def handlePremium(self):
-        try:
-            self.html = self.load(self.pyfile.url, decode=True)
-        except BadHeader, e:
-            self.account.relogin(self.user)
-            self.retry(max_tries=3, reason=str(e))
-
-        m = re.search(self.LINK_PATTERN, self.html)
-        if m:
-            link = m.group(1)
-            self.logDebug("Premium link: %s" % link)
-            self.download(link, disposition=True)
-        else:
-            if re.search(self.ERR_LOGIN_PATTERN, self.html):
-                self.relogin(self.user)
-                self.retry(max_tries=3, reason="User login failed")
-            elif re.search(self.ERR_CREDIT_PATTERN, self.html):
-                self.fail("Not enough credit left")
-            else:
-                self.fail("Download link not found")
-- 
cgit v1.2.3