diff options
author | RaNaN <Mast3rRaNaN@hotmail.de> | 2011-06-02 13:00:20 +0200 |
---|---|---|
committer | RaNaN <Mast3rRaNaN@hotmail.de> | 2011-06-02 13:00:20 +0200 |
commit | 9415f17b63a1167c5f933e2ef7784d1aa4cf3e30 (patch) | |
tree | 4ccfefac0cea6622381f0abddf62bc94557552ea /module/plugins/accounts/WuploadCom.py | |
parent | wupload plugin (free) (diff) | |
download | pyload-9415f17b63a1167c5f933e2ef7784d1aa4cf3e30.tar.xz |
wupload premium (untested), new log functions for plugins, decode kwarg for requests
Diffstat (limited to 'module/plugins/accounts/WuploadCom.py')
-rw-r--r-- | module/plugins/accounts/WuploadCom.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/module/plugins/accounts/WuploadCom.py b/module/plugins/accounts/WuploadCom.py new file mode 100644 index 000000000..884a4768e --- /dev/null +++ b/module/plugins/accounts/WuploadCom.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- + +""" + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, + or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, see <http://www.gnu.org/licenses/>. + + @author: RaNaN +""" + +from types import MethodType + +from module.plugins.Account import Account + +try: + from json import loads as json_loads +except ImportError: # pragma: no cover + from module.lib.simplejson import loads as json_loads + +class WuploadCom(Account): + __name__ = "WuploadCom" + __version__ = "0.1" + __type__ = "account" + __description__ = """filesonic.com account plugin""" + __author_name__ = ("RaNaN", "Paul King") + __author_mail__ = ("RaNaN@pyload.org", "") + + API_URL = "http://api.filesonic.com" + + def init(self): + fs = self.core.pluginManager.getAccountPlugin("FilesonicCom") + + methods = ["loadAccountInfo", "login"] + #methods to bind from fs + + for m in methods: + setattr(self, m, MethodType(fs.__dict__[m], self, WuploadCom)) + + def getDomain(self, req): + xml = req.load(self.API_URL + "/utility?method=getWuploadDomainForCurrentIp&format=json", + decode=True) + return json_loads(xml)["FSApi_Utility"]["getWuploadDomainForCurrentIp"]["response"]
\ No newline at end of file |