summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSimo Sorce <simo@redhat.com>2013-12-04 22:42:09 -0500
committerSimo Sorce <simo@redhat.com>2013-12-11 15:35:39 -0500
commit62e6fff6cf4b5c8a5c33c3143f995d047fe6c384 (patch)
tree9c62da6256708b011a0318738d3d08b4235b1931 /src
parent92496ab03df595a19b61cfe4d0f0b3050262241d (diff)
downloadipsilon-62e6fff6cf4b5c8a5c33c3143f995d047fe6c384.tar.gz
ipsilon-62e6fff6cf4b5c8a5c33c3143f995d047fe6c384.tar.xz
ipsilon-62e6fff6cf4b5c8a5c33c3143f995d047fe6c384.zip
Use jinja2 as the templating system
Add flashy css to indicate this is development stuff
Diffstat (limited to 'src')
-rwxr-xr-xsrc/ipsilon.py17
-rwxr-xr-xsrc/root.py34
2 files changed, 43 insertions, 8 deletions
diff --git a/src/ipsilon.py b/src/ipsilon.py
index 15b0ec8..20c2c66 100755
--- a/src/ipsilon.py
+++ b/src/ipsilon.py
@@ -20,17 +20,14 @@
import sys
sys.stdout = sys.stderr
+import os
import atexit
import threading
import cherrypy
from util import plugin
from util import data
-
-class Root(object):
-
- @cherrypy.expose
- def index(self):
- return '/'
+from jinja2 import Environment, FileSystemLoader
+import root
cherrypy.config.update('ipsilon.conf')
@@ -43,8 +40,11 @@ datastore = data.Store()
admin_config = datastore.get_admin_config()
cherrypy.config.update(admin_config)
+templates = os.path.join(cherrypy.config['base.dir'], 'templates')
+env = Environment(loader=FileSystemLoader(templates))
+
if __name__ == "__main__":
- cherrypy.quickstart(Root())
+ cherrypy.quickstart(root.Root(env))
else:
cherrypy.config.update({'environment': 'embedded'})
@@ -53,4 +53,5 @@ else:
cherrypy.engine.start(blocking=False)
atexit.register(cherrypy.engine.stop)
- application = cherrypy.Application(Root(), script_name=None, config=None)
+ application = cherrypy.Application(root.Root(env),
+ script_name=None, config=None)
diff --git a/src/root.py b/src/root.py
new file mode 100755
index 0000000..d4cd900
--- /dev/null
+++ b/src/root.py
@@ -0,0 +1,34 @@
+#!/usr/bin/python
+#
+# Copyright (C) 2013 Simo Sorce <simo@redhat.com>
+#
+# see file 'COPYING' for use and warranty information
+#
+# 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/>.
+
+import cherrypy
+
+class Root(object):
+
+ def __init__(self, template_env):
+ self._env = template_env
+
+ @cherrypy.expose
+ def index_html(self):
+ tmpl = self._env.get_template('index.html')
+ return tmpl.render(title='Root', content='Awesome!')
+
+ @cherrypy.expose
+ def index(self):
+ return self.index_html()