def traverse(self, name, ignored): # The context is important here, since it becomes the parent of the # resource, which is needed to generate the absolute URL. res = namespace.getResource(self.context, name, self.request) if isinstance(res, InterfaceClass): raise Forbidden('Access to traverser is forbidden.') return res
def __call__(self): # The context is important here, since it becomes the parent of the # icon, which is needed to generate the absolute URL. resource = getResource(self.context, self.rname, self.request) src = resource() return ('<img src="%s" alt="%s" width="%s" height="%s" border="0" />' % (src, self.alt, self.width, self.height))
def icon(self): """Returns a additional named icon for the given context.""" icon = zope.component.queryMultiAdapter((self.context, self.request), name=self.iconName) if icon is not None: resource = getResource(icon.context, icon.rname, self.request) src = resource() return ('<img src="%s" alt="icon" width="%s" height="%s" ' 'border="0" />' % (src, icon.width, icon.height)) return u''
def publishTraverse(self, request, name): content = None auth = getUtility(IAuthentication) try: principal = auth.getPrincipal(name) prefs = IPersonalProfile(principal) if prefs.profileImage: return LocationProxy(prefs.profileImage, self, name) except PrincipalLookupError: raise NotFound(self, name, request) return getResource(getSite(), 'profileEmptyImage.png', request)
def getToggleIcon(self, item, state): """Returns a toggle icon including settings for json url.""" if state == STATE_COLLAPSED: iconName = self.collapsedIconName elif state == STATE_EXPANDED: iconName = self.expandedIconNamen else: iconName = self.staticIconName icon = zope.component.getMultiAdapter((item, self.request), name=iconName) resource = getResource(icon.context, icon.rname, self.request) src = resource() longDescURL = absoluteURL(item, self.request) return ('<img src="%s" alt="toggle icon" width="%s" height="%s" ' 'border="0" longDesc="%s" />' % (src, icon.width, icon.height, longDescURL))
def publishTraverse(self, request, name): content = None try: id = int(name) content = getUtility(IIntIds).queryObject(id) except: pass if IAvatar.providedBy(content): return LocationProxy(content, self, name) auth = getUtility(IAuthentication) try: principal = auth.getPrincipal(name) prefs = IPersonalProfile(principal) if prefs.avatarImage: return LocationProxy(prefs.avatarImage, self, name) except PrincipalLookupError: if name != '0': raise NotFound(self, name, request) return getResource(getSite(), 'avatarEmptyImage.png', request)
def test_getResource_not_found(self): with self.assertRaises(LocationError): namespace.getResource(None, '', None)
def url(self): resource = getResource(self.context, self.rname, self.request) src = resource() return src