[Checkins] SVN: grokcore.chameleon/trunk/src/grokcore/chameleon/components.py make sure the target_language is set on a lower level class, so it translation is done for PageTemplate(File) components too
Jan Wijbrand Kolman
cvs-admin at zope.org
Mon May 7 15:29:15 UTC 2012
Log message for revision 125685:
make sure the target_language is set on a lower level class, so it translation is done for PageTemplate(File) components too
Changed:
U grokcore.chameleon/trunk/src/grokcore/chameleon/components.py
-=-
Modified: grokcore.chameleon/trunk/src/grokcore/chameleon/components.py
===================================================================
--- grokcore.chameleon/trunk/src/grokcore/chameleon/components.py 2012-05-07 14:57:17 UTC (rev 125684)
+++ grokcore.chameleon/trunk/src/grokcore/chameleon/components.py 2012-05-07 15:29:12 UTC (rev 125685)
@@ -31,7 +31,7 @@
from z3c.pt.expressions import PathExpr, ProviderExpr
-class PageTemplate(PageTemplate, GrokTemplate):
+class PageTemplate(PageTemplate):
"""A Chameleon page template suitable for use with views.
It defines the path and provider expression types to the template in
@@ -48,6 +48,15 @@
'structure': StructureExpr,
}
+ def render(self, **vars):
+ if 'target_language' not in vars:
+ try:
+ target_language = zope.i18n.negotiate(vars['request'])
+ except:
+ target_language = None
+ vars['target_language'] = target_language
+ return super(PageTemplate, self).render(**vars)
+
def _module_relative_to_abs(ctx, filename):
# Taken and adapted from z3c.pth.pagetemplate.
if os.path.isabs(filename):
@@ -105,12 +114,6 @@
def render(self, view):
context = self.getNamespace(view)
- if 'target_language' not in context:
- try:
- target_language = zope.i18n.negotiate(context['request'])
- except:
- target_language = None
- context['target_language'] = target_language
return self._template(**context)
More information about the checkins
mailing list