Skip to content

Commit 84ac18f

Browse files
committed
templating: Move template selection logic from the template loaders
to the client.
1 parent d817c53 commit 84ac18f

File tree

3 files changed

+14
-10
lines changed

3 files changed

+14
-10
lines changed

roundup/cgi/client.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1063,11 +1063,23 @@ def renderFrontPage(self, message):
10631063
self.error_message.append(message)
10641064
self.write_html(self.renderContext())
10651065

1066+
def selectTemplate(self):
1067+
""" Template selection logic """
1068+
loader = self.instance.templates
1069+
1070+
name = self.classname
1071+
view = self.template
1072+
1073+
# if classname is not set, use "home" template
1074+
if name is None:
1075+
name = 'home'
1076+
1077+
return name, view
1078+
10661079
def renderContext(self):
10671080
""" Return a PageTemplate for the named page
10681081
"""
1069-
name = self.classname
1070-
view = self.template
1082+
name, view = self.selectTemplate()
10711083

10721084
# catch errors so we can handle PT rendering errors more nicely
10731085
args = {

roundup/cgi/engine_chameleon.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,6 @@ def __init__(self, dir):
1313
self.loader = chameleon.PageTemplateLoader(dir)
1414

1515
def load(self, name, view=None):
16-
# default the name to "home"
17-
if name is None:
18-
name = 'home'
19-
2016
src, filename = find_template(self.dir, name, view)
2117
return RoundupPageTemplate(self.loader.load(src))
2218

roundup/cgi/engine_zopetal.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,6 @@ def __init__(self, dir):
2222
self.dir = dir
2323

2424
def load(self, name, view=None):
25-
# default the name to "home"
26-
if name is None:
27-
name = 'home'
28-
2925
# find the source
3026
src, filename = find_template(self.dir, name, view)
3127

0 commit comments

Comments
 (0)