summaryrefslogtreecommitdiffstats
path: root/module/plugins/accounts
diff options
context:
space:
mode:
Diffstat (limited to 'module/plugins/accounts')
-rw-r--r--module/plugins/accounts/AlldebridCom.py27
-rw-r--r--module/plugins/accounts/BayfilesCom.py17
2 files changed, 38 insertions, 6 deletions
diff --git a/module/plugins/accounts/AlldebridCom.py b/module/plugins/accounts/AlldebridCom.py
new file mode 100644
index 000000000..4968e9bdd
--- /dev/null
+++ b/module/plugins/accounts/AlldebridCom.py
@@ -0,0 +1,27 @@
+from module.plugins.Account import Account
+import xml.dom.minidom as dom
+from time import time
+
+class AlldebridCom(Account):
+ __name__ = "AlldebridCom"
+ __version__ = "0.1"
+ __type__ = "account"
+ __description__ = """AllDebrid.com account plugin"""
+ __author_name__ = ("Andy, Voigt")
+ __author_mail__ = ("spamsales@online.de")
+
+ def loadAccountInfo(self, user, req):
+ data = self.getAccountData(user)
+ page = req.load("http://www.alldebrid.com/api.php?action=info_user&login=%s&pw=%s" % (user, data["password"]))
+ self.log.debug(page)
+ xml = dom.parseString(page)
+ account_info = {"validuntil": (time()+int(xml.getElementsByTagName("date")[0].childNodes[0].nodeValue)*86400),
+ "trafficleft": -1}
+
+ return account_info
+
+ def login(self, user, data, req):
+ page = req.load("http://www.alldebrid.com/register/?action=login&login_login=%s&login_password=%s" % (user, data["password"]))
+
+ if "This login doesn't exist" in page:
+ self.wrongPassword()
diff --git a/module/plugins/accounts/BayfilesCom.py b/module/plugins/accounts/BayfilesCom.py
index 803e602cb..0d036488b 100644
--- a/module/plugins/accounts/BayfilesCom.py
+++ b/module/plugins/accounts/BayfilesCom.py
@@ -20,23 +20,28 @@
from module.plugins.Account import Account
from module.common.json_layer import json_loads
import re
-from time import mktime, strptime
+from time import time, mktime, strptime
class BayfilesCom(Account):
__name__ = "BayfilesCom"
- __version__ = "0.01"
+ __version__ = "0.02"
__type__ = "account"
__description__ = """bayfiles.com account plugin"""
__author_name__ = ("zoidberg")
__author_mail__ = ("zoidberg@mujmail.cz")
def loadAccountInfo(self, user, req):
- response = json_loads(req.load("http://api.bayfiles.com/v1/account/info"))
- self.logDebug(response)
-
+ for i in range(2):
+ response = json_loads(req.load("http://api.bayfiles.com/v1/account/info"))
+ self.logDebug(response)
+ if not response["error"]:
+ break
+ self.logWarning(response["error"])
+ self.relogin()
+
return {"premium": bool(response['premium']), \
"trafficleft": -1, \
- "validuntil": response['expires'] if response['expires'] > 0 else -1}
+ "validuntil": response['expires'] if response['expires'] >= int(time()) else -1}
def login(self, user, data, req):
response = json_loads(req.load("http://api.bayfiles.com/v1/account/login/%s/%s" % (user, data["password"])))