]> ToastFreeware Gitweb - philipp/winterrodeln/wradmin.git/commitdiff
Rendering root URL is now done by Genshi.
authorphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Thu, 27 Jul 2017 22:01:13 +0000 (22:01 +0000)
committerphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Thu, 27 Jul 2017 22:01:13 +0000 (22:01 +0000)
git-svn-id: http://www.winterrodeln.org/svn/wradmin/trunk@2669 7aebc617-e5e2-0310-91dc-80fb5f6d2477

wradmin/__init__.py
wradmin/genshi.py [new file with mode: 0644]

index 8fa96e25e3c6f460f9c2a62f873bd3fe929b63cc..0c046f4c0d39b9aa1515a185ff24b35af02c3729 100644 (file)
@@ -3,6 +3,7 @@
 # FLASK_APP=wradmin WRADMIN_SETTINGS=production.cfg python3 -m flask run
 from flask import Flask, send_from_directory, abort, g
 from sqlalchemy.engine import create_engine
+from wradmin.genshi import render_genshi_template
 
 
 app = Flask(__name__)
@@ -28,7 +29,7 @@ def close_db(error):
 
 @app.route("/")
 def hello():
-    return send_from_directory('templates', 'index.html')
+    return render_genshi_template('index.html')
 
 
 @app.route("/rodelbahn/")
diff --git a/wradmin/genshi.py b/wradmin/genshi.py
new file mode 100644 (file)
index 0000000..afbab49
--- /dev/null
@@ -0,0 +1,29 @@
+import os
+import genshi.template
+
+
+class PylonsHelper:
+    def url(self, controller, action=None):
+        return ''
+
+    def wiki(self):
+        return ''
+
+    def forum(self):
+        return ''
+
+
+class FakeSession:
+    def has_key(self, key):
+        return False
+
+    def save(self):
+        pass
+
+
+def render_genshi_template(template, **kwargs):
+    loader = genshi.template.TemplateLoader(os.path.join(os.path.dirname(__file__), 'templates'), auto_reload=True)
+    tmpl = loader.load(template)
+    genshi_kwargs = {'h': PylonsHelper(), 'session': FakeSession()}
+    genshi_kwargs.update(kwargs)
+    return tmpl.generate(**genshi_kwargs).render('html', doctype='html')