def getAttachment(self):
     result = {
         'name': self.context.Title(),
         'href': self.context.absolute_url(),
     }
     
     if hasattr(self.context, 'Description') and self.context.Description():
         result.update({'description': ' '.join(self.context.Description().split())})
     
     image_provider = IFacebookImage(self.context)
     image_url = image_provider.getURL(scale='tile')
     if image_url:
         result.update({
             'media': [{
                 'type': 'image',
                 'src': image_url,
                 'href': self.context.absolute_url(),
             }]
         })
     return result
    def getAttachment(self):
        result = {
            'name': self.context.Title(),
            'href': self.context.absolute_url(),
        }

        if hasattr(self.context, 'Description') and self.context.Description():
            result.update(
                {'description': ' '.join(self.context.Description().split())})

        image_provider = IFacebookImage(self.context)
        image_url = image_provider.getURL(scale='tile')
        if image_url:
            result.update({
                'media': [{
                    'type': 'image',
                    'src': image_url,
                    'href': self.context.absolute_url(),
                }]
            })
        return result
Example #3
0
    def getProperties(self):
        """
        Returns a dictionary that maps Open Graph properties names
        (e.g. "og:title") to values.
        """

        result = {}

        # Set the type of object.
        context_state = self.context.restrictedTraverse(
            '@@plone_context_state')
        portal = getSite()
        settings = IFacebookSettings(portal)

        if context_state.is_portal_root():
            result['og:type'] = 'website'
            portal = getSite()
            result['og:title'] = portal.Title()
            result['og:url'] = portal.absolute_url()
            description = portal.Description()

        else:
            result['og:type'] = 'article'
            result['og:title'] = self.context.Title()
            result['og:url'] = self.context.absolute_url()
            description = self.context.Description()

        if description:
            result['og:description'] = description

        image_provider = IFacebookImage(self.context)
        image_url = image_provider.getURL(scale='preview')
        if image_url:
            result['og:image'] = image_url

        result['og:site_name'] = portal.Title()
        result['fb:app_id'] = settings.app_id

        return result
    def getProperties(self):
        """
        Returns a dictionary that maps Open Graph properties names
        (e.g. "og:title") to values.
        """
        
        result = {}
        
        # Set the type of object.
        context_state = self.context.restrictedTraverse('@@plone_context_state')
        portal = getSite()
        settings = IFacebookSettings(portal)
        
        if context_state.is_portal_root():
            result['og:type'] = 'website'
            portal = getSite()
            result['og:title'] = portal.Title()
            result['og:url'] = portal.absolute_url()
            description = portal.Description()
            
        else:
            result['og:type'] = 'article'
            result['og:title'] = self.context.Title()
            result['og:url'] = self.context.absolute_url()
            description = self.context.Description()

        if description:
            result['og:description'] = description
        
        image_provider = IFacebookImage(self.context)
        image_url = image_provider.getURL(scale='preview')
        if image_url:
            result['og:image'] = image_url
            
        result['og:site_name'] = portal.Title()
        result['fb:app_id'] = settings.app_id
        
        return result