diff options
Diffstat (limited to 'module/plugins/accounts/FourSharedCom.py')
-rw-r--r-- | module/plugins/accounts/FourSharedCom.py | 39 |
1 files changed, 19 insertions, 20 deletions
diff --git a/module/plugins/accounts/FourSharedCom.py b/module/plugins/accounts/FourSharedCom.py index 206edca23..ec19f83f5 100644 --- a/module/plugins/accounts/FourSharedCom.py +++ b/module/plugins/accounts/FourSharedCom.py @@ -1,34 +1,33 @@ # -*- coding: utf-8 -*- -from module.plugins.Account import Account from module.common.json_layer import json_loads +from module.plugins.Account import Account class FourSharedCom(Account): - __name__ = "FourSharedCom" - __type__ = "account" - __version__ = "0.01" + __name__ = "FourSharedCom" + __type__ = "account" + __version__ = "0.03" __description__ = """FourShared.com account plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __license__ = "GPLv3" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] def loadAccountInfo(self, user, req): - #fixme - return {"validuntil": -1, "trafficleft": -1, "premium": False} + # Free mode only for now + return {"premium": False} + def login(self, user, data, req): - req.cj.setCookie("www.4shared.com", "4langcookie", "en") - response = req.load('http://www.4shared.com/login', - post={"login": user, - "password": data['password'], - "remember": "false", - "doNotRedirect": "true"}) - self.logDebug(response) - response = json_loads(response) - - if not "ok" in response or response['ok'] != True: - if "rejectReason" in response and response['rejectReason'] != True: - self.logError(response['rejectReason']) + req.cj.setCookie("4shared.com", "4langcookie", "en") + res = req.load('http://www.4shared.com/web/login', + post={'login': user, + 'password': data['password'], + 'remember': "on", + '_remember': "on", + 'returnTo': "http://www.4shared.com/account/home.jsp"}) + + if 'Please log in to access your 4shared account' in res: self.wrongPassword() |