check for specialized traverser based on target object

git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3382 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2009-05-15 12:32:35 +00:00
parent 03ee214a7c
commit 305c8dc5d3

View file

@ -62,6 +62,16 @@ class NodeTraverser(ItemTraverser):
tv = component.getMultiAdapter((target, request), name='layout')
viewAnnotations['targetView'] = tv
return self.context
if self.context.target is not None:
# check for specialized traverser
traverser = IPublishTraverse(adapted(self.context.target), None)
if traverser is not None:
target = traverser.publishTraverse(self, request, name)
if target is not None:
viewAnnotations['target'] = target
tv = component.getMultiAdapter((target, request), name='layout')
viewAnnotations['targetView'] = tv
return self.context
obj = None
# for name, tr in component.getAdapters(self.context, IPublishTraverse):
# if name: