recent changes: show only objects the current user is allowed to access

git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3944 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2010-08-09 13:33:28 +00:00
parent f87521f469
commit bd6edb0ad7
3 changed files with 7 additions and 4 deletions

View file

@ -178,8 +178,8 @@ Recent changes
>>> data[0].timeStamp >>> data[0].timeStamp
u'... ...:...' u'... ...:...'
>>> data[0].objectData >>> data[0].objectData
{'url': '', 'version': '', 'type': u'Text', {'version': '', 'canAccess': True, 'title': 'Change Doc 001', 'url': '',
'object': <loops.resource.Resource ...>, 'title': 'Change Doc 001'} 'object': <loops.resource.Resource object at ...>, 'type': u'Text'}
>>> data[0].user >>> data[0].user
{'url': '', 'object': <loops.concept.Concept ...>, 'title': u'john'} {'url': '', 'object': <loops.concept.Concept ...>, 'title': u'john'}
>>> data[0].action >>> data[0].action

View file

@ -70,7 +70,8 @@
<tr tal:repeat="row info/data" <tr tal:repeat="row info/data"
tal:attributes="class python: repeat['row'].odd() and 'even' or 'odd'"> tal:attributes="class python: repeat['row'].odd() and 'even' or 'odd'">
<tal:row define="object row/objectData; <tal:row define="object row/objectData;
url object/url"> url object/url"
condition="object/canAccess">
<td tal:attributes="title object/object/description"> <td tal:attributes="title object/object/description">
<a tal:omit-tag="not:url" <a tal:omit-tag="not:url"
tal:attributes="href string:$url?version=this" tal:attributes="href string:$url?version=this"

View file

@ -36,6 +36,7 @@ from cybertools.meta.interfaces import IOptions
from cybertools.util import format from cybertools.util import format
from loops.browser.common import BaseView from loops.browser.common import BaseView
from loops.interfaces import IConcept, IResource from loops.interfaces import IConcept, IResource
from loops.security.common import canAccessObject
from loops import util from loops import util
from loops.util import _ from loops.util import _
from loops.versioning.interfaces import IVersionable from loops.versioning.interfaces import IVersionable
@ -267,7 +268,8 @@ class TrackDetails(BaseView):
versionable = IVersionable(self.object, None) versionable = IVersionable(self.object, None)
version = versionable is not None and versionable.versionId or '' version = versionable is not None and versionable.versionId or ''
return dict(object=obj, title=obj.title, return dict(object=obj, title=obj.title,
type=self.longTypeTitle, url=url, version=version) type=self.longTypeTitle, url=url, version=version,
canAccess=canAccessObject(obj))
@Lazy @Lazy
def user(self): def user(self):