def attachments(self): """ Get preview images for status update attachments """ if all([ self.is_attachment_supported(), self.is_preview_supported(), IAttachmentStoragable.providedBy(self.status), ]): storage = IAttachmentStorage(self.status) attachments = storage.values() for attachment in attachments: docconv = IDocconv(attachment) if docconv.has_thumbs(): url = api.portal.get().absolute_url() yield ('{portal_url}/@@status-attachments/{status_id}/' '{attachment_id}/thumb').format( portal_url=url, status_id=self.status.getId(), attachment_id=attachment.getId())
def attachments(self): """ Get preview images for status update attachments """ if all([ self.is_attachment_supported(), self.is_preview_supported(), IAttachmentStoragable.providedBy(self.status), ]): storage = IAttachmentStorage(self.status) attachments = storage.values() for attachment in attachments: docconv = IDocconv(attachment) if docconv.has_thumbs(): url = api.portal.get().absolute_url() yield ('{portal_url}/@@status-attachments/{status_id}/' '{attachment_id}/thumb').format( portal_url=url, status_id=self.status.getId(), attachment_id=attachment.getId())
def attachments(self): """ Get preview images for status update attachments """ if not self.is_attachment_supported(): return [] if not self.is_preview_supported(): return [] if not IAttachmentStoragable.providedBy(self.status): return [] storage = IAttachmentStorage(self.status) items = storage.values() if not items: return [] attachments = [] portal_url = api.portal.get().absolute_url() base_url = '{portal_url}/@@status-attachments/{status_id}'.format( portal_url=portal_url, status_id=self.status.getId(), ) for item in items: item_url = '/'.join((base_url, item.getId())) docconv = IDocconv(item) if docconv.has_thumbs(): url = '/'.join((item_url, 'thumb')) elif isinstance(item, Image): images = api.content.get_view( 'images', item.aq_base, self.request, ) url = '/'.join(( item_url, images.scale(scale='preview').url.lstrip('/') )) else: # We need a better fallback image. See #See #122 url = '/'.join(( api.portal.get().absolute_url(), '++theme++ploneintranet.theme/generated/media/logo.svg')) if url: attachments.append(dict(img_src=url, link=item_url)) return attachments
def attachments(self): """ Get preview images for status update attachments """ storage = IAttachmentStorage(self.context, {}) items = storage.values() return map(self.item2attachments, items)
def attachments(self): """ Get preview images for status update attachments """ storage = IAttachmentStorage(self.context, {}) items = storage.values() return map(self.item2attachments, items)