summaryrefslogtreecommitdiffstats
path: root/module/plugins/accounts/RapidshareCom.py
diff options
context:
space:
mode:
Diffstat (limited to 'module/plugins/accounts/RapidshareCom.py')
-rw-r--r--module/plugins/accounts/RapidshareCom.py57
1 files changed, 24 insertions, 33 deletions
diff --git a/module/plugins/accounts/RapidshareCom.py b/module/plugins/accounts/RapidshareCom.py
index c9766cd57..ccc0d0fb2 100644
--- a/module/plugins/accounts/RapidshareCom.py
+++ b/module/plugins/accounts/RapidshareCom.py
@@ -27,44 +27,35 @@ class RapidshareCom(Account):
__author_name__ = ("mkaay")
__author_mail__ = ("mkaay@mkaay.de")
- def getAccountInfo(self, user):
- try:
- data = None
- for account in self.accounts.items():
- if account[0] == user:
- data = account[1]
- if not data:
- raise Exception
- req = self.core.requestFactory.getRequest(self.__name__, user)
- api_url_base = "http://api.rapidshare.com/cgi-bin/rsapi.cgi"
- api_param_prem = {"sub": "getaccountdetails_v1", "type": "prem", "login": user, "password": data["password"], "withcookie": 1}
- src = req.load(api_url_base, cookies=False, get=api_param_prem)
- if src.startswith("ERROR"):
- raise Exception
- fields = src.split("\n")
- info = {}
- for t in fields:
- if not t.strip():
- continue
- k, v = t.split("=")
- info[k] = v
-
- out = Account.getAccountInfo(self, user)
- restkb = int(info["tskb"])
- maxtraffic = int(info["rapids"])/14 * (5*1024*1024) + restkb
- tmp = {"validuntil":int(info["billeduntil"]), "trafficleft":maxtraffic if int(info["autorefill"]) else restkb, "maxtraffic":maxtraffic}
- out.update(tmp)
- return out
- except:
- return Account.getAccountInfo(self, user)
+ def loadAccountInfo(self, user):
+ data = self.getAccountData(user)
+ req = self.getAccountRequest(user)
+ api_url_base = "http://api.rapidshare.com/cgi-bin/rsapi.cgi"
+ api_param_prem = {"sub": "getaccountdetails_v1", "type": "prem", "login": user, "password": data["password"], "withcookie": 1}
+ src = req.load(api_url_base, cookies=False, get=api_param_prem)
+ if src.startswith("ERROR"):
+ raise Exception(src)
+ fields = src.split("\n")
+ info = {}
+ for t in fields:
+ if not t.strip():
+ continue
+ k, v = t.split("=")
+ info[k] = v
+
+ restkb = int(info["tskb"])
+ maxtraffic = int(info["rapids"])/14 * (5*1024*1024) + restkb
+ tmp = {"validuntil":int(info["billeduntil"]), "trafficleft":maxtraffic if int(info["autorefill"]) else restkb, "maxtraffic":maxtraffic}
+
+ return tmp
def login(self, user, data):
- req = self.core.requestFactory.getRequest(self.__name__, user)
+ req = self.getAccountRequest(user)
api_url_base = "http://api.rapidshare.com/cgi-bin/rsapi.cgi"
api_param_prem = {"sub": "getaccountdetails_v1", "type": "prem", "login": user, "password": data["password"], "withcookie": 1}
src = req.load(api_url_base, cookies=False, get=api_param_prem)
if src.startswith("ERROR"):
- return
+ raise Exception(src)
fields = src.split("\n")
info = {}
for t in fields:
@@ -72,7 +63,7 @@ class RapidshareCom(Account):
continue
k, v = t.split("=")
info[k] = v
- cj = self.core.requestFactory.getCookieJar(self.__name__, user)
+ cj = self.getAccountCookies(user)
cj.setCookie("rapidshare.com", "enc", info["cookie"])