diff options
Diffstat (limited to 'module/plugins/accounts/NoPremiumPl.py')
-rw-r--r-- | module/plugins/accounts/NoPremiumPl.py | 80 |
1 files changed, 41 insertions, 39 deletions
diff --git a/module/plugins/accounts/NoPremiumPl.py b/module/plugins/accounts/NoPremiumPl.py index 7e3f757d3..e9dad7647 100644 --- a/module/plugins/accounts/NoPremiumPl.py +++ b/module/plugins/accounts/NoPremiumPl.py @@ -4,78 +4,80 @@ import datetime import hashlib import time -from module.plugins.Account import Account -from module.common.json_layer import json_loads as loads +from module.common.json_layer import json_loads +from module.plugins.internal.Account import Account class NoPremiumPl(Account): - __name__ = "NoPremiumPl" - __version__ = "0.01" - __type__ = "account" + __name__ = "NoPremiumPl" + __type__ = "account" + __version__ = "0.03" + __status__ = "testing" + __description__ = "NoPremium.pl account plugin" - __license__ = "GPLv3" - __authors__ = [("goddie", "dev@nopremium.pl")] + __license__ = "GPLv3" + __authors__ = [("goddie", "dev@nopremium.pl")] - _api_url = "http://crypt.nopremium.pl" - _api_query = { - "site": "nopremium", - "username": "", - "password": "", - "output": "json", - "loc": "1", - "info": "1" - } + API_URL = "http://crypt.nopremium.pl" + API_QUERY = {'site' : "nopremium", + 'username': "" , + 'password': "" , + 'output' : "json" , + 'loc' : "1" , + 'info' : "1" } _req = None _usr = None _pwd = None - def loadAccountInfo(self, name, req): + + def parse_info(self, name, req): self._req = req try: - result = loads(self.runAuthQuery()) + result = json_loads(self.run_auth_query()) except Exception: - # todo: return or let it be thrown? + #@TODO: return or let it be thrown? return premium = False valid_untill = -1 - if "expire" in result.keys() and result["expire"]: + if "expire" in result.keys() and result['expire']: premium = True - valid_untill = time.mktime(datetime.datetime.fromtimestamp(int(result["expire"])).timetuple()) - traffic_left = result["balance"] * 1024 + valid_untill = time.mktime(datetime.datetime.fromtimestamp(int(result['expire'])).timetuple()) + + traffic_left = result['balance'] * 1024 - return ({ - "validuntil": valid_untill, - "trafficleft": traffic_left, - "premium": premium - }) + return {'validuntil' : valid_untill, + 'trafficleft': traffic_left, + 'premium' : premium } - def login(self, user, data, req): + + def login(self, user, password, data, req): self._usr = user - self._pwd = hashlib.sha1(hashlib.md5(data["password"]).hexdigest()).hexdigest() + self._pwd = hashlib.sha1(hashlib.md5(password).hexdigest()).hexdigest() self._req = req try: - response = loads(self.runAuthQuery()) + response = json_loads(self.run_auth_query()) except Exception: - self.wrongPassword() + self.login_fail() if "errno" in response.keys(): - self.wrongPassword() + self.login_fail() + data['usr'] = self._usr data['pwd'] = self._pwd - def createAuthQuery(self): - query = self._api_query - query["username"] = self._usr - query["password"] = self._pwd + def create_auth_query(self): + query = self.API_QUERY + query['username'] = self._usr + query['password'] = self._pwd return query - def runAuthQuery(self): - data = self._req.load(self._api_url, post=self.createAuthQuery()) - return data
\ No newline at end of file + def run_auth_query(self): + return self.load(self.API_URL, + post=self.create_auth_query()) |