summaryrefslogtreecommitdiffstats
path: root/module/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'module/plugins')
-rw-r--r--module/plugins/internal/Account.py20
-rw-r--r--module/plugins/internal/Base.py4
-rw-r--r--module/plugins/internal/Hoster.py2
3 files changed, 16 insertions, 10 deletions
diff --git a/module/plugins/internal/Account.py b/module/plugins/internal/Account.py
index 8ef8ee305..a0c46a6a1 100644
--- a/module/plugins/internal/Account.py
+++ b/module/plugins/internal/Account.py
@@ -13,7 +13,7 @@ from module.utils import compare_time, lock
class Account(Plugin):
__name__ = "Account"
__type__ = "account"
- __version__ = "0.58"
+ __version__ = "0.60"
__status__ = "testing"
__description__ = """Base account plugin"""
@@ -299,7 +299,9 @@ class Account(Plugin):
@lock
def getAccountData(self, user, force=False):
- self.accounts[user]['plugin'].get_info()
+ if force:
+ self.accounts[user]['plugin'].get_info()
+
return self.accounts[user]
@@ -435,19 +437,23 @@ class Account(Plugin):
self.log_error(_("Error choosing user `%s`") % user, _("User not exists"))
return False
- if user is self.user:
+ if self.req and user is self.user:
return True
self.user = user
self.info.clear()
self.clean()
- if self.user is not None:
- self.login()
- return True
+ if user is None:
+ return False
else:
- return False
+ if not self.logged:
+ self.relogin()
+ else:
+ self.req = self.pyload.requestFactory.getRequest(self.__name__, self.user)
+
+ return True
###########################################################################
diff --git a/module/plugins/internal/Base.py b/module/plugins/internal/Base.py
index d4d4094b9..28b648994 100644
--- a/module/plugins/internal/Base.py
+++ b/module/plugins/internal/Base.py
@@ -46,7 +46,7 @@ def check_abort(fn):
class Base(Plugin):
__name__ = "Base"
__type__ = "base"
- __version__ = "0.07"
+ __version__ = "0.08"
__status__ = "testing"
__pattern__ = r'^unmatchable$'
@@ -158,7 +158,7 @@ class Base(Plugin):
self.req = self.pyload.requestFactory.getRequest(self.__name__, self.account.user)
self.chunk_limit = -1 #: -1 for unlimited
self.resume_download = True
- self.premium = self.account.premium
+ self.premium = self.account.info['data']['premium'] #: Don't use `self.account.premium` to avoid one unnecessary get_info call
else:
self.req = self.pyload.requestFactory.getRequest(self.__name__)
self.chunk_limit = 1
diff --git a/module/plugins/internal/Hoster.py b/module/plugins/internal/Hoster.py
index 09466465d..c65946413 100644
--- a/module/plugins/internal/Hoster.py
+++ b/module/plugins/internal/Hoster.py
@@ -281,7 +281,7 @@ class Hoster(Base):
#@TODO: Rewrite in 0.4.10
size = self.pyfile.size / 1024
self.log_info(_("Filesize: %s KiB") % size,
- _("Traffic left for user `%s`: %s KiB") % (self.account.user, traffic))
+ _("Traffic left for user `%s`: %d KiB") % (self.account.user, traffic))
return size <= traffic