diff pylons_app/controllers/hg.py @ 21:fac1f62a1d71

Wrapped into mako templates, changed templates info. Added session and cache middleware.
author Marcin Kuzminski
date Sun, 28 Feb 2010 02:24:44 +0100
parents bbaab7501c1a
children 3142616771cd
line wrap: on
line diff
--- a/pylons_app/controllers/hg.py	Sun Feb 28 01:52:38 2010 +0100
+++ b/pylons_app/controllers/hg.py	Sun Feb 28 02:24:44 2010 +0100
@@ -13,11 +13,23 @@
 log = logging.getLogger(__name__)
 
 class HgController(BaseController):
-    def index(self):
-        return g.hgapp(request.environ, self.start_response)
+
+    def __before__(self):
+        c.repos_prefix = 'etelko'
+
 
     def view(self, *args, **kwargs):
-        return g.hgapp(request.environ, self.start_response)
+        response = g.hgapp(request.environ, self.start_response)
+        #for mercurial protocols we can't wrap into mako
+        if request.environ['HTTP_ACCEPT'].find("mercurial") >= 0:
+                    return response
+
+        #wrap the murcurial response in a mako template.
+        template = Template("".join(response),
+                            lookup = request.environ['pylons.pylons']\
+                            .config['pylons.g'].mako_lookup)
+
+        return template.render(g = g, c = c, session = session, h = h)
 
     def add_repo(self, new_repo):
         c.staticurl = g.statics