provide standard attributes in base view
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3316 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
parent
79e225e054
commit
55b231e8f9
2 changed files with 30 additions and 5 deletions
|
@ -42,6 +42,26 @@ class BaseView(object):
|
||||||
self.context = removeSecurityProxy(context) # this is the adapted concept!
|
self.context = removeSecurityProxy(context) # this is the adapted concept!
|
||||||
self.request = request
|
self.request = request
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def loopsRoot(self):
|
||||||
|
return self.context.getLoopsRoot()
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def defaultPredicate(self):
|
||||||
|
return self.loopsRoot.getConceptManager().getDefaultPredicate()
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def conceptManager(self):
|
||||||
|
return self.loopsRoot.getConceptManager()
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def resourceManager(self):
|
||||||
|
return self.loopsRoot.getResourceManager()
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def defaultPredicate(self):
|
||||||
|
return self.conceptManager.getDefaultPredicate()
|
||||||
|
|
||||||
@Lazy
|
@Lazy
|
||||||
def viewAnnotations(self):
|
def viewAnnotations(self):
|
||||||
return self.request.annotations.get('loops.view', {})
|
return self.request.annotations.get('loops.view', {})
|
||||||
|
|
|
@ -62,11 +62,16 @@ class NodeTraverser(ItemTraverser):
|
||||||
tv = component.getMultiAdapter((target, request), name='layout')
|
tv = component.getMultiAdapter((target, request), name='layout')
|
||||||
viewAnnotations['targetView'] = tv
|
viewAnnotations['targetView'] = tv
|
||||||
return self.context
|
return self.context
|
||||||
try:
|
obj = None
|
||||||
obj = super(NodeTraverser, self).publishTraverse(request, name)
|
# for name, tr in component.getAdapters(self.context, IPublishTraverse):
|
||||||
except NotFound, e:
|
# if name:
|
||||||
viewAnnotations['pageName'] = name
|
# obj = tr.publishTraverse(request, name)
|
||||||
return self.context
|
if obj is None:
|
||||||
|
try:
|
||||||
|
obj = super(NodeTraverser, self).publishTraverse(request, name)
|
||||||
|
except NotFound, e:
|
||||||
|
viewAnnotations['pageName'] = name
|
||||||
|
return self.context
|
||||||
return obj
|
return obj
|
||||||
|
|
||||||
def cleanUpTraversalStack(self, request, name):
|
def cleanUpTraversalStack(self, request, name):
|
||||||
|
|
Loading…
Add table
Reference in a new issue