diff options
author | RaNaN <Mast3rRaNaN@hotmail.de> | 2013-01-16 22:52:17 +0100 |
---|---|---|
committer | RaNaN <Mast3rRaNaN@hotmail.de> | 2013-01-16 22:52:17 +0100 |
commit | f743873c5cd308d1ca4145f3b71823e5f2df05de (patch) | |
tree | 46129540e249ecf11147e6d34c0cb6ec863de26b /module/web | |
parent | animate package added (diff) | |
download | pyload-f743873c5cd308d1ca4145f3b71823e5f2df05de.tar.xz |
evaluate different webservers
Diffstat (limited to 'module/web')
-rw-r--r-- | module/web/ServerThread.py | 41 | ||||
-rw-r--r-- | module/web/static/js/views/packageView.js | 6 | ||||
-rw-r--r-- | module/web/static/js/views/settingsView.js | 2 |
3 files changed, 40 insertions, 9 deletions
diff --git a/module/web/ServerThread.py b/module/web/ServerThread.py index dc30f4bc5..ffe5ae380 100644 --- a/module/web/ServerThread.py +++ b/module/web/ServerThread.py @@ -38,6 +38,8 @@ class WebServer(threading.Thread): def run(self): self.running = True + # TODO: clean this up + import webinterface global webinterface @@ -63,22 +65,51 @@ class WebServer(threading.Thread): log.warning(_("Of course you need to be familiar with linux and know how to compile software")) self.server = "builtin" - try: if self.server == "fastcgi": self.start_fcgi() - elif self.server in ("threaded", "builtin"): + elif self.server == "threaded": self.start_threaded() - elif self.server == "lightweight": - self.start_lightweight() - else: + elif self.server == "fallback": self.start_fallback() + else: + self.start_auto() + except Exception, e: log.error(_("Failed starting webserver: " + e.message)) self.error = e if core: core.print_exc() + def start_auto(self): + # TODO: select server + +# server = "wsgiref" +# server = "tornado" +# server = "fapws3" +# server = "meinheld" +# server = "eventlet" +# server = "bjoern" + server = "threaded" + + if server == "threaded": + return self.start_threaded() + if server == "wsgiref": + return self.start_fallback() + if server == "bjoern": + return self.start_lightweight() + if server == "meinheld": + def noop(*args, **kwargs): + pass + from meinheld import server as sv + sv.set_access_logger(None) + sv.set_error_logger(None) + + sv.kill_server = noop + + log.info("AUTO server %s" % server) + webinterface.run_server(host=self.host, port=self.port, server=server) + def start_fallback(self): if self.https: log.warning(_("This server offers no SSL, please consider using threaded instead")) diff --git a/module/web/static/js/views/packageView.js b/module/web/static/js/views/packageView.js index 365f3a69f..5d8aa7738 100644 --- a/module/web/static/js/views/packageView.js +++ b/module/web/static/js/views/packageView.js @@ -53,13 +53,12 @@ define(['jquery', 'views/abstract/itemView', 'underscore', 'views/fileView'], ul.append(new fileView({model: file}).render().el); }); - this.$el.append(ul); - // TODO: additionally it could be placed out of viewport first // The real height can only be retrieved when element is on DOM and display:true ul.css('visibility', 'hidden'); + this.$el.append(ul); + var height = ul.height(); - ul.css('visibility', ''); // Hide the element when not expanded if (!this.expanded) { @@ -67,6 +66,7 @@ define(['jquery', 'views/abstract/itemView', 'underscore', 'views/fileView'], ul.height(0); } + ul.css('visibility', ''); ul.data('height', height); console.log(ul.data("height")); diff --git a/module/web/static/js/views/settingsView.js b/module/web/static/js/views/settingsView.js index aba16eb66..a322cdae7 100644 --- a/module/web/static/js/views/settingsView.js +++ b/module/web/static/js/views/settingsView.js @@ -1,7 +1,7 @@ define(['jquery', 'underscore', 'backbone'], function($, _, Backbone) { - // Renders a single package item + // Renders settings over view page return Backbone.View.extend({ el: "#content", |