diff options
author | RaNaN <Mast3rRaNaN@hotmail.de> | 2010-08-10 14:01:40 +0200 |
---|---|---|
committer | RaNaN <Mast3rRaNaN@hotmail.de> | 2010-08-10 14:01:40 +0200 |
commit | 85f50861e44565a8ce722cbb1fed2c98f9e5d256 (patch) | |
tree | 38ad593a1e574e8c6a98123e7e7ebac0a785e25e /module/web | |
parent | little fix (diff) | |
download | pyload-85f50861e44565a8ce722cbb1fed2c98f9e5d256.tar.xz |
webservers working, hotfolder hook
Diffstat (limited to 'module/web')
-rw-r--r-- | module/web/ServerThread.py | 87 | ||||
-rw-r--r-- | module/web/cnl/views.py | 3 | ||||
-rw-r--r-- | module/web/servers/nginx_default.conf | 2 | ||||
-rw-r--r-- | module/web/settings.py | 2 | ||||
-rw-r--r-- | module/web/templates/default/collector.html | 4 |
5 files changed, 55 insertions, 43 deletions
diff --git a/module/web/ServerThread.py b/module/web/ServerThread.py index f7bf11b3c..40683004a 100644 --- a/module/web/ServerThread.py +++ b/module/web/ServerThread.py @@ -2,6 +2,8 @@ from __future__ import with_statement from os.path import exists from os.path import join +from os.path import abspath +from os import makedirs from subprocess import PIPE from subprocess import Popen from subprocess import call @@ -30,21 +32,19 @@ class WebServer(threading.Thread): avail = ["builtin"] host = self.core.config['webinterface']['host'] port = self.core.config['webinterface']['port'] - path = join(pypath, "module", "web") + serverpath = join(pypath, "module", "web") + path = join(abspath(""), "servers") out = StringIO() - #@TODO rewrite, maybe as hook - - if exists(join("module", "web", "pyload.db")): + if not exists("pyload.db"): #print "########## IMPORTANT ###########" #print "### Database for Webinterface does not exitst, it will not be available." #print "### Please run: python %s syncdb" % join(self.pycore.path, "module", "web", "manage.py") #print "### You have to add at least one User, to gain access to webinterface: python %s createsuperuser" % join(self.pycore.path, "module", "web", "manage.py") #print "### Dont forget to restart pyLoad if you are done." log.warning(_("Database for Webinterface does not exitst, it will not be available.")) - log.warning(_("Please run: python %s syncdb") % join(pypath, "module", "web", "manage.py")) - log.warning(_("You have to add at least one User, to gain access to webinterface: python %s createsuperuser") % join(configdir, "module", "web", "manage.py")) - log.warning(_("Dont forget to restart pyLoad if you are done.")) + log.warning(_("Please run: python pyLoadCore -s")) + log.warning(_("Go through the setup and create a database and add an user to gain access.")) return None try: @@ -70,42 +70,47 @@ class WebServer(threading.Thread): try: - if exists(self.core.config["ssl"]["cert"]) and exists(self.core.config["ssl"]["key"]): - if not exists("ssl.pem"): - key = file(self.core.config["ssl"]["key"], "rb") - cert = file(self.core.config["ssl"]["cert"], "rb") - - pem = file("ssl.pem", "wb") - pem.writelines(key.readlines()) - pem.writelines(cert.readlines()) - - key.close() - cert.close() - pem.close() - + if self.https: + if exists(self.core.config["ssl"]["cert"]) and exists(self.core.config["ssl"]["key"]): + if not exists("ssl.pem"): + key = file(self.core.config["ssl"]["key"], "rb") + cert = file(self.core.config["ssl"]["cert"], "rb") + + pem = file("ssl.pem", "wb") + pem.writelines(key.readlines()) + pem.writelines(cert.readlines()) + + key.close() + cert.close() + pem.close() + + else: + log.warning(_("SSL certificates not found.")) + self.https = False else: - self.https = False + pass except: self.https = False if not self.server in avail: self.server = "builtin" - logger.warning(_("Can't use %(server)s, either python-flup or %(server)s is not installed!") % {"server": self.server}) + log.warning(_("Can't use %(server)s, either python-flup or %(server)s is not installed!") % {"server": self.server}) if self.server == "nginx": - self.core.logger.info(_("Starting nginx Webserver: %s:%s") % (host, port)) - config = file(join(path, "servers", "nginx_default.conf"), "rb") - content = config.readlines() + if not exists(join(path, "nginx")): + makedirs(join(path, "nginx")) + + config = file(join(serverpath, "servers", "nginx_default.conf"), "rb") + content = config.read() config.close() - content = "".join(content) - content = content.replace("%(path)", join(path, "servers")) + content = content.replace("%(path)", join(path, "nginx")) content = content.replace("%(host)", host) content = content.replace("%(port)", str(port)) - content = content.replace("%(media)", join(path, "media")) + content = content.replace("%(media)", join(serverpath, "media")) content = content.replace("%(version)", ".".join(map(str, version_info[0:2]))) if self.https: @@ -113,32 +118,37 @@ class WebServer(threading.Thread): ssl on; ssl_certificate %s; ssl_certificate_key %s; - """ % (self.core.config["ssl"]["cert"], self.core.config["ssl"]["key"])) + """ % (abspath(self.core.config["ssl"]["cert"]), abspath(self.core.config["ssl"]["key"]) )) else: content = content.replace("%(ssl)", "") - new_config = file(join(path, "servers", "nginx.conf"), "wb") + new_config = file(join(path, "nginx.conf"), "wb") new_config.write(content) new_config.close() - command = ['nginx', '-c', join(path, "servers", "nginx.conf"),] + command = ['nginx', '-c', join(path, "nginx.conf")] self.p = Popen(command, stderr=PIPE, stdin=PIPE, stdout=Output(out)) + log.info(_("Starting nginx Webserver: %s:%s") % (host, port)) import run_fcgi run_fcgi.handle("daemonize=false", "method=threaded", "host=127.0.0.1", "port=9295") elif self.server == "lighttpd": - self.core.logger.info(_("Starting lighttpd Webserver: %s:%s") % (host, port)) - config = file(join(path, "servers", "lighttpd_default.conf"), "rb") + + if not exists(join(path, "lighttpd")): + makedirs(join(path, "lighttpd")) + + + config = file(join(serverpath, "servers", "lighttpd_default.conf"), "rb") content = config.readlines() config.close() content = "".join(content) - content = content.replace("%(path)", join(path, "servers")) + content = content.replace("%(path)", join("servers", "lighttpd")) content = content.replace("%(host)", host) content = content.replace("%(port)", str(port)) - content = content.replace("%(media)", join(path, "media")) + content = content.replace("%(media)", join(serverpath, "media")) content = content.replace("%(version)", ".".join(map(str, version_info[0:2]))) if self.https: @@ -146,16 +156,17 @@ class WebServer(threading.Thread): ssl.engine = "enable" ssl.pemfile = "%s" ssl.ca-file = "%s" - """ % (join(selcorere.path, "ssl.pem"), self.core.config["ssl"]["cert"])) + """ % ("ssl.pem" , self.core.config["ssl"]["cert"]) ) else: content = content.replace("%(ssl)", "") - new_config = file(join(path, "servers", "lighttpd.conf"), "wb") + new_config = file(join("servers", "lighttpd.conf"), "wb") new_config.write(content) new_config.close() - command = ['lighttpd', '-D', '-f', join(path, "servers", "lighttpd.conf")] + command = ['lighttpd', '-D', '-f', join(path, "lighttpd.conf")] self.p = Popen(command, stderr=PIPE, stdin=PIPE, stdout=Output(out)) + log.info(_("Starting lighttpd Webserver: %s:%s") % (host, port)) import run_fcgi run_fcgi.handle("daemonize=false", "method=threaded", "host=127.0.0.1", "port=9295") diff --git a/module/web/cnl/views.py b/module/web/cnl/views.py index fc02d68a7..7bc2ae6d4 100644 --- a/module/web/cnl/views.py +++ b/module/web/cnl/views.py @@ -103,7 +103,8 @@ def addcrypted2(request): jk = list(org) jk.reverse() jk = "".join(jk) - print jk + else: + print "Could not decrypt key, please install py-spidermonkey" else: rt = spidermonkey.Runtime() cx = rt.new_context() diff --git a/module/web/servers/nginx_default.conf b/module/web/servers/nginx_default.conf index 2741ad6ff..b4ebd1e02 100644 --- a/module/web/servers/nginx_default.conf +++ b/module/web/servers/nginx_default.conf @@ -58,7 +58,7 @@ http { server_name %(host); # site_media - folder in uri for static files location ^~ /media { - root %(path)/..; + root %(media)/..; } location ^~ /admin/media { root /usr/lib/python%(version)/site-packages/django/contrib; diff --git a/module/web/settings.py b/module/web/settings.py index 81d6cb8e8..d5a070b69 100644 --- a/module/web/settings.py +++ b/module/web/settings.py @@ -130,7 +130,7 @@ MIDDLEWARE_CLASSES = ( 'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
- 'django.contrib.csrf.middleware.CsrfViewMiddleware',
+ #'django.contrib.csrf.middleware.CsrfViewMiddleware',
'django.contrib.csrf.middleware.CsrfResponseMiddleware'
)
diff --git a/module/web/templates/default/collector.html b/module/web/templates/default/collector.html index 09725103b..266038af1 100644 --- a/module/web/templates/default/collector.html +++ b/module/web/templates/default/collector.html @@ -125,8 +125,8 @@ document.addEvent("domready", function(){ </span>
<span style="font-size: 15px">{{ child.name }}</span><br />
<div class="child_secrow">
- <span class="child_status">{{ child.status }}</span>{{child.error}}
- <span class="child_status">{{ child.format_size }}/span>
+ <span class="child_status">{{ child.statusmsg }}</span>{{child.error}}
+ <span class="child_status">{{ child.format_size }}</span>
<span class="child_status">{{ child.plugin }}</span>
<span class="child_status">{% trans "Folder:" %} {{child.folder}}</span>
|