changeset 4739:94be76e04140

templating: Move template selection logic from the template loaders to the client.
author anatoly techtonik <techtonik@gmail.com>
date Mon, 14 Jan 2013 20:25:00 +0300
parents d82ce9ad8044
children fe9568a6cbd6
files roundup/cgi/client.py roundup/cgi/engine_chameleon.py roundup/cgi/engine_zopetal.py
diffstat 3 files changed, 14 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/roundup/cgi/client.py	Mon Jan 14 19:57:42 2013 +0300
+++ b/roundup/cgi/client.py	Mon Jan 14 20:25:00 2013 +0300
@@ -1063,11 +1063,23 @@
         self.error_message.append(message)
         self.write_html(self.renderContext())
 
+    def selectTemplate(self):
+        """ Template selection logic """
+        loader = self.instance.templates
+
+        name = self.classname
+        view = self.template
+        
+        # if classname is not set, use "home" template
+        if name is None:
+            name = 'home'
+
+        return name, view
+
     def renderContext(self):
         """ Return a PageTemplate for the named page
         """
-        name = self.classname
-        view = self.template
+        name, view = self.selectTemplate()
 
         # catch errors so we can handle PT rendering errors more nicely
         args = {
--- a/roundup/cgi/engine_chameleon.py	Mon Jan 14 19:57:42 2013 +0300
+++ b/roundup/cgi/engine_chameleon.py	Mon Jan 14 20:25:00 2013 +0300
@@ -13,10 +13,6 @@
         self.loader = chameleon.PageTemplateLoader(dir)
 
     def load(self, name, view=None):
-        # default the name to "home"
-        if name is None:
-            name = 'home'
-
         src, filename = find_template(self.dir, name, view)
         return RoundupPageTemplate(self.loader.load(src))
 
--- a/roundup/cgi/engine_zopetal.py	Mon Jan 14 19:57:42 2013 +0300
+++ b/roundup/cgi/engine_zopetal.py	Mon Jan 14 20:25:00 2013 +0300
@@ -22,10 +22,6 @@
         self.dir = dir
 
     def load(self, name, view=None):
-        # default the name to "home"
-        if name is None:
-            name = 'home'
-
         # find the source
         src, filename = find_template(self.dir, name, view)
 

Roundup Issue Tracker: http://roundup-tracker.org/