本文整理汇总了Python中zope.traversing.browser.absoluteURL函数的典型用法代码示例。如果您正苦于以下问题:Python absoluteURL函数的具体用法?Python absoluteURL怎么用?Python absoluteURL使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了absoluteURL函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: update
def update(self):
topic = self.context
request = self.request
formatter = getFormatter(request, 'fancyDatetime', 'medium')
name = topic.__name__
owner = IOwnership(topic).owner
profile = IPersonalProfile(owner)
space = getattr(profile, 'space', None)
self.name = name
self.replies = len(topic)-1
self.owner = getattr(profile, 'title', '')
self.avatar = profile is not None and profile.avatarUrl(request) or '#',
self.personal = '%s/'%(space and absoluteURL(space, request) or '',)
message = topic.lastMessage
if message is not None:
owner = IOwnership(message).owner
profile = IPersonalProfile(owner, None)
space = getattr(profile, 'space', None)
self.lastmessage = {
'date': formatter.format(IDCTimes(message).modified),
'owner': getattr(profile, 'title', ''),
'personal': '%s/'%(space and absoluteURL(space,request) or '',),
'avatar': profile is not None and profile.avatarUrl(request) or '#',
'url': '%s/%s/'%(name, message.__name__)}
开发者ID:Zojax,项目名称:zojax.forum,代码行数:29,代码来源:topicforumview.py
示例2: getUserInfo
def getUserInfo(self, loginOrId):
"""Return the user name details, and avatar url for given userid"""
principal = getPrincipal(loginOrId)
if principal is None:
principal = getPrincipalByLogin(loginOrId)
if principal is not None:
profile = IPersonalProfile(principal, None)
homeFolder = IPersonalSpace(principal, None)
profileUrl = homeFolder is not None and '%s/profile/'%absoluteURL(homeFolder, self.request) or ''
if profile.avatar is not None:
iconURL = '%s/profile.avatar/%s' % (absoluteURL(getSite(), self.request), principal.id)
else:
iconURL = '%sprofileImage' % profileUrl
return {'username' : loginOrId,
'fullname' : principal.title,
'email' : profile.email,
'home_page' : profileUrl,
'location' : profileUrl,
'description' : principal.description,
'portrait_url' : iconURL
}
else:
raise ValueError("User %s Does not Exist!" % loginOrId)
开发者ID:Zojax,项目名称:zojax.cynin.xmlrpc,代码行数:27,代码来源:view.py
示例3: handleNext
def handleNext(self, action):
currentStep = self.step
if IPageletForm.providedBy(currentStep):
data, errors = currentStep.extractData()
if errors:
return
if not currentStep.isComplete():
return
self.updateSteps()
nextStep = self.request.get(self.nextStepName)
if nextStep:
try:
nextStep = int(nextStep)
except:
nextStep = int(nextStep[0])
self.redirect(
'%s/'%absoluteURL(self.steps[nextStep], self.request))
else:
for pos, step in enumerate(self.steps):
if currentStep.name == step.name:
break
self.redirect('%s/'%absoluteURL(self.steps[pos+1], self.request))
开发者ID:Zojax,项目名称:zojax.wizard,代码行数:26,代码来源:wizard.py
示例4: update
def update(self):
super(MemberMessageNotification, self).update()
context = self.context
request = self.request
group = removeAllProxies(context.context).__parent__
visible = checkPermission('zope.View', group)
owner = IOwnership(group).owner
profile = IPersonalProfile(owner, None)
message = cgi.escape(context.message)
message = message.replace(' ', ' ')
message = message.replace('\n', '<br />')
self.title = group.title
self.sender = getattr(profile, 'title', 'Unknown member')
self.info = {
'title': group.title,
'description': group.description,
'created': IDCTimes(group).created,
'members': len(group),
'url': '%s/'%absoluteURL(group, request),
'message': message,
'default': not visible or not bool(getattr(group, 'logo', None)),
'sender': self.sender}
if profile is not None:
self.addHeader(u'From', formataddr((self.sender, profile.email),))
self.site = getSite()
self.siteTitle = getattr(self.site, 'title', u'') or self.site.__name__
self.siteURL = u'%s'%absoluteURL(self.site, request)
开发者ID:Zojax,项目名称:zojax.members,代码行数:35,代码来源:messagetemplate.py
示例5: handlePublish
def handlePublish(self, action):
errorSteps = []
for step in self.steps:
if not step.isComplete():
errorSteps.append(step)
if errorSteps:
IStatusMessage(self.request).add(errorSteps, 'wizardError')
return
draft = self.draft
request = self.request
try:
content = draft.publish()
IStatusMessage(self.request).add(
_(u'Your ${type_title} has been published.',
mapping={'type_title': IContentType(content).title}))
view = queryMultiAdapter((content, request), IContentViewView)
if view is not None:
self.redirect('%s/%s'%(absoluteURL(content,request), view.name))
else:
self.redirect('%s/'%absoluteURL(content, request))
del draft.__parent__[draft.__name__]
except DraftException, err:
IStatusMessage(request).add(str(err), 'error')
self.wizard.setCurrentStep('content')
self.redirect('%s/index.html'%absoluteURL(draft, request))
开发者ID:Zojax,项目名称:zojax.content.draft,代码行数:29,代码来源:draft.py
示例6: update
def update(self):
try:
author = getUtility(IAuthentication).getPrincipal(
self.context.author)
except:
author = None
if author is not None:
profile = IPersonalProfile(author)
self.avatar = profile.avatarUrl(self.request)
self.author = profile.title
if profile.space is not None:
self.url = absoluteURL(profile.space, self.request)
else:
self.avatar = u'%s/@@profile.avatar/0'%absoluteURL(
getSite(), self.request)
if author is not None or author == u'Unauthenticated User':
if getattr(self.context, 'authorName'):
self.author = self.context.authorName
if 'social_avatar_url' in dir(self.context) and self.context.social_type:
self.social_avatar = self.context.social_avatar_url
if self.context.social_type==1:
self.social_name = 'Twitter'
elif self.context.social_type==2:
self.social_name = 'Facebook'
self.comment = self.context.comment
content = self.context.content
self.postsAllowed = (
IContentDiscussion(content).status in [1, 4] and
checkPermission('zojax.AddComment', content))
开发者ID:Zojax,项目名称:zojax.content.discussion,代码行数:34,代码来源:comment.py
示例7: update
def update(self):
super(TaskDeletedNotification, self).update()
context = removeAllProxies(self.context)
request = self.request
principal = self.request.principal
self.name = context.__name__
mailer = getUtility(IMailer)
profile = IPersonalProfile(principal, None)
if profile is not None and profile.email:
author = profile.title
self.author = author
self.addHeader(u"To", formataddr((author, profile.email)))
else:
self.author = principal.title or principal.id
self.addHeader(u"From", formataddr((self.author, mailer.email_from_address)))
self.url = "%s/" % absoluteURL(context, request)
self.project = context.__parent__.__parent__
# project
self.projectTitle = self.project.title
self.projectUrl = u"%s/" % absoluteURL(self.project, request)
开发者ID:Zojax,项目名称:zojax.project,代码行数:27,代码来源:templates.py
示例8: listDrafts
def listDrafts(self):
ids = getUtility(IIntIds)
request = self.request
context = self.context
drafts = []
for name in context:
draft = context[name]
if not checkPermission('zope.View', draft):
continue
try:
loc = ids.queryObject(draft.location)
locTitle = loc.title
locUrl = '%s/'%absoluteURL(loc, request)
except:
locTitle = _('Unknown')
locUrl = u''
dc = ICMFDublinCore(draft.content)
info = {'name': name,
'title': draft.title or _('[No title]'),
'description': draft.description,
'url': '%s/'%absoluteURL(draft, request),
'location': locTitle,
'locationURL': locUrl,
'icon': queryMultiAdapter((draft, request), name='zmi_icon'),
'draft': draft,
'modified': dc.modified,
'status': ISubmittedDraftContent.providedBy(draft),
'contentType': IContentType(draft.content)}
drafts.append(info)
return drafts
开发者ID:Zojax,项目名称:zojax.content.draft,代码行数:35,代码来源:draftcontainer.py
示例9: __call__
def __call__(self):
"""Create breadcrumbs for an interface object.
The breadcrumbs are rooted at the code browser.
"""
docroot = findAPIDocumentationRoot(self.context)
codeModule = traverse(docroot, "Code")
crumbs = [{
'name': _('[top]'),
'url': absoluteURL(codeModule, self.request)
}]
# We need the __module__ of the interface, not of a location proxy,
# so we have to remove all proxies.
iface = removeAllProxies(self.context)
mod_names = iface.__module__.split('.')
obj = codeModule
for name in mod_names:
try:
obj = traverse(obj, name)
except KeyError: # pragma: no cover
# An unknown (root) module, such as logging
continue
crumbs.append({
'name': name,
'url': absoluteURL(obj, self.request)
})
crumbs.append({
'name': iface.__name__,
'url': absoluteURL(self.context, self.request)
})
return crumbs
开发者ID:zopefoundation,项目名称:zope.app.apidoc,代码行数:31,代码来源:browser.py
示例10: update
def update(self):
super(EventDeletedNotification, self).update()
context = removeAllProxies(self.context)
request = self.request
principal = self.request.principal
self.name = context.__name__
mailer = getUtility(IMailer)
profile = IPersonalProfile(principal, None)
if profile is not None and profile.email:
author = profile.title
self.author = author
self.addHeader(u'To', formataddr((author, profile.email),))
else:
self.author = principal.title or principal.id
self.addHeader(u'From', formataddr((self.author, mailer.email_from_address),))
self.url = '%s/'%absoluteURL(context, request)
self.calendar = context.__parent__
# calendar
self.calendarUrl = u'%s/'%absoluteURL(self.calendar, request)
开发者ID:Zojax,项目名称:zojax.calendar,代码行数:26,代码来源:templates.py
示例11: update
def update(self):
super(CommentNotificationMail, self).update()
content = self.context
comment = self.context0
self.comment = comment
request = self.request
principal = self.request.principal
mailer = getUtility(IMailer)
profile = IPersonalProfile(principal, None)
if profile is not None and profile.email:
author = profile.title
self.author = author
space = getattr(profile, 'space', None)
if space is not None:
self.profile_url = '%s/profile/' % absoluteURL(space, request)
self.addHeader(u'To', formataddr((author, profile.email),))
self.addHeader(u'From', formataddr((author, mailer.email_from_address),))
else:
self.author = principal.title or principal.id
view = queryMultiAdapter((content, request), IContentViewView)
if view is not None:
self.url = '%s/%s'%(absoluteURL(content, request), view.name)
else:
self.url = '%s/'%absoluteURL(content, request)
self.content = comment.content
self.portal_title = getMultiAdapter((getSite(), request), IBreadcrumb).name
self.available = comment.isAvailable()
开发者ID:Zojax,项目名称:zojax.content.discussion,代码行数:34,代码来源:template.py
示例12: listComments
def listComments(self):
auth = getUtility(IAuthentication)
formatter = getFormatter(self.request, 'fancyDatetime', 'medium')
comments = []
for comment in self.comments:
info = {'name': comment.__name__,
'title': comment.content.title,
'url': absoluteURL(comment.content, self.request),
'author': None,
'profile': None,
'date': comment.date,
'fomratteddate': formatter.format(comment.date)}
try:
principal = auth.getPrincipal(comment.author)
profile = IPersonalProfile(principal)
info['author'] = profile.title
space = profile.space
if space is not None:
info['profile'] = '%s/'%absoluteURL(space, self.request)
except PrincipalLookupError:
pass
comments.append(info)
return comments
开发者ID:Zojax,项目名称:zojax.content.discussion,代码行数:29,代码来源:portlet.py
示例13: update
def update(self):
super(NotificationMail, self).update()
content = self.context
event = self.contexts[0]
request = self.request
self.url = "%s/" % absoluteURL(content, request)
principal = IOwnership(content).owner
profile = IPersonalProfile(principal)
if profile.email:
author = profile.title
self.author = author
self.addHeader(u"From", formataddr((author, profile.email)))
self.addHeader(u"To", formataddr((self.author, profile.email)))
else:
self.author = principal.title or principal.id
self.site = getSite()
if profile.space is not None:
self.space = u"%s/" % absoluteURL(profile.space, request)
cId = getUtility(IIntIds).getId(content)
self.messageId = u"<%s.%[email protected]>" % (cId, time.time())
开发者ID:Zojax,项目名称:zojax.personal.content,代码行数:28,代码来源:template.py
示例14: query
def query(self, default=None):
request = self.request
content = self.getLocation()
if content is None:
return
item = IItem(content, None)
title = u''
description = u''
if item is not None:
title = item.title
description = item.description
view = queryMultiAdapter((content, request), IContentViewView)
if view is not None:
url = '%s/%s'%(absoluteURL(content, request), view.name)
else:
url = '%s/'%absoluteURL(content, request)
return {'url': url,
'title': title or _('[No title]'),
'content': content,
'icon': queryMultiAdapter((content, request), name='zmi_icon'),
'description': description or u''}
开发者ID:Zojax,项目名称:zojax.content.table,代码行数:25,代码来源:location.py
示例15: url
def url(self):
viewName = queryMultiAdapter(
(self.context, self.request), IContentViewView)
if viewName is not None:
return '%s/%s'%(
absoluteURL(self.context, self.request), viewName.name)
else:
return '%s/'%(absoluteURL(self.context, self.request))
开发者ID:Zojax,项目名称:zojax.content.browser,代码行数:8,代码来源:breadcrumb.py
示例16: nextURL
def nextURL(self):
viewName = queryMultiAdapter(
(self._addedObject, self.request), IContentViewView)
if viewName is not None:
return '%s/%s'%(
absoluteURL(self._addedObject, self.request), viewName.name)
else:
return '%s/'%absoluteURL(self._addedObject, self.request)
开发者ID:Zojax,项目名称:zojax.content.forms,代码行数:8,代码来源:form.py
示例17: nextURL
def nextURL(self):
if 'person_id' in self.request:
person_id = self.request['person_id']
app = ISchoolToolApplication(None)
persons = app['persons']
if person_id in persons:
return absoluteURL(persons[person_id], self.request)
return absoluteURL(self.context, self.request)
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:8,代码来源:contact.py
示例18: getLinkURL
def getLinkURL(self, item):
"""Setup link url."""
state = IWorkflowState(item).getState()
if state != None:
state = titleForState(state)
if self.linkName is not None and state == "Entwurf":
return '%s/%s' % (absoluteURL(item, self.request), self.linkName)
return absoluteURL(item, self.request)
开发者ID:novareto,项目名称:uvcsite,代码行数:8,代码来源:tables.py
示例19: update
def update(self):
base_resource_url = '%s/@@/jquery-uploadify/' % absoluteURL(getSite(), self.request)
url = self.request.getURL()
params = {
'uploader_url': base_resource_url + 'uploadify.swf',
'script_url': '%s/bulk-upload-process' % absoluteURL(self.context, self.request),
'ticket': issueTicket(url),
'button_text': translate(self.buttonText, context=self.request),
'cancel_image_url': base_resource_url + 'cancel.png',
}
includeInplaceSource(INIT_TEMPLATE % params, ('jquery-uploadify',))
开发者ID:Zojax,项目名称:zojax.bulkupload,代码行数:11,代码来源:upload.py
示例20: update
def update(self):
super(MessageTemplate, self).update()
request, context = self.request, self.context
self.portal_title = getMultiAdapter((getSite(), request), IBreadcrumb).name
self.portal_url = '%s/' % absoluteURL(getSite(), request)
self.url = '%s/' % absoluteURL(context, request)
self.form = getMultiAdapter((context, request), IFormResults)
self.form.update(self.record)
开发者ID:Zojax,项目名称:zojax.askexpert,代码行数:11,代码来源:template.py
注:本文中的zope.traversing.browser.absoluteURL函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论