use specialized traverser if corresponding adapter available

git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3388 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2009-05-18 12:40:42 +00:00
parent 305c8dc5d3
commit 8e2f664446

View file

@ -26,7 +26,7 @@ from zope.app.container.traversal import ItemTraverser
from zope.cachedescriptors.property import Lazy from zope.cachedescriptors.property import Lazy
from zope import component from zope import component
from zope.component import adapts from zope.component import adapts
from zope.publisher.interfaces import NotFound from zope.publisher.interfaces import NotFound, IPublishTraverse
from loops.common import adapted from loops.common import adapted
from loops.i18n.browser import LanguageInfo from loops.i18n.browser import LanguageInfo
@ -66,7 +66,7 @@ class NodeTraverser(ItemTraverser):
# check for specialized traverser # check for specialized traverser
traverser = IPublishTraverse(adapted(self.context.target), None) traverser = IPublishTraverse(adapted(self.context.target), None)
if traverser is not None: if traverser is not None:
target = traverser.publishTraverse(self, request, name) target = traverser.publishTraverse(request, name)
if target is not None: if target is not None:
viewAnnotations['target'] = target viewAnnotations['target'] = target
tv = component.getMultiAdapter((target, request), name='layout') tv = component.getMultiAdapter((target, request), name='layout')