get principal title if person not present
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3054 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
parent
4729f0ef5c
commit
0381c7577e
2 changed files with 12 additions and 4 deletions
|
@ -59,8 +59,7 @@
|
||||||
for="loops.interfaces.ILoopsObject
|
for="loops.interfaces.ILoopsObject
|
||||||
zope.publisher.interfaces.browser.IBrowserRequest"
|
zope.publisher.interfaces.browser.IBrowserRequest"
|
||||||
factory="loops.organize.memberinfo.MemberInfoProvider"
|
factory="loops.organize.memberinfo.MemberInfoProvider"
|
||||||
permission="zope.Public"
|
permission="zope.Public" />
|
||||||
/>
|
|
||||||
|
|
||||||
<zope:adapter factory="loops.organize.setup.SetupManager"
|
<zope:adapter factory="loops.organize.setup.SetupManager"
|
||||||
name="organize" />
|
name="organize" />
|
||||||
|
|
|
@ -22,6 +22,8 @@ View class(es) for change tracks.
|
||||||
$Id$
|
$Id$
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
from zope import component
|
||||||
|
from zope.app.security.interfaces import IAuthentication, PrincipalLookupError
|
||||||
from zope.cachedescriptors.property import Lazy
|
from zope.cachedescriptors.property import Lazy
|
||||||
from zope.traversing.browser import absoluteURL
|
from zope.traversing.browser import absoluteURL
|
||||||
from zope.traversing.api import getName
|
from zope.traversing.api import getName
|
||||||
|
@ -57,13 +59,20 @@ class BaseTrackView(TrackView):
|
||||||
obj = util.getObjectForUid(uid)
|
obj = util.getObjectForUid(uid)
|
||||||
if obj is not None:
|
if obj is not None:
|
||||||
return obj
|
return obj
|
||||||
return uid
|
try:
|
||||||
|
return self.authentication.getPrincipal(uid) or uid
|
||||||
|
except PrincipalLookupError:
|
||||||
|
return uid
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def authentication(self):
|
||||||
|
return component.getUtility(IAuthentication)
|
||||||
|
|
||||||
@Lazy
|
@Lazy
|
||||||
def userTitle(self):
|
def userTitle(self):
|
||||||
if isinstance(self.user, basestring):
|
if isinstance(self.user, basestring):
|
||||||
return self.user
|
return self.user
|
||||||
return getattr(self.user, 'title', getName(self.user))
|
return self.user.title
|
||||||
|
|
||||||
@Lazy
|
@Lazy
|
||||||
def userUrl(self):
|
def userUrl(self):
|
||||||
|
|
Loading…
Add table
Reference in a new issue