src/pyams_default_theme/shared/common/opengraph.py
changeset 385 e0f8d5d0e31e
parent 379 240417d006df
child 388 f5521cdc0207
equal deleted inserted replaced
384:f34545ec2436 385:e0f8d5d0e31e
    78 
    78 
    79         # illustration properties
    79         # illustration properties
    80         registry = request.registry
    80         registry = request.registry
    81         illustration = None
    81         illustration = None
    82         thumbnail = None
    82         thumbnail = None
       
    83         alt = None
    83         target = context
    84         target = context
    84         while target is not None:
    85         while target is not None:
    85             illustration = registry.queryAdapter(target, IIllustration, name='link')
    86             illustration = registry.queryAdapter(target, IIllustration, name='link')
    86             if (illustration is None) or (not illustration.has_data()):
    87             if (illustration is None) or (not illustration.has_data()):
    87                 illustration = registry.queryAdapter(target, IIllustration)
    88                 illustration = registry.queryAdapter(target, IIllustration)
   113         # twitter properties
   114         # twitter properties
   114         share_info = ISocialShareInfo(request.root, None)
   115         share_info = ISocialShareInfo(request.root, None)
   115         if (share_info is not None) and share_info.twitter_account:
   116         if (share_info is not None) and share_info.twitter_account:
   116             yield ContentMeta('twitter:site', share_info.twitter_account)
   117             yield ContentMeta('twitter:site', share_info.twitter_account)
   117             yield ContentMeta('twitter:creator', share_info.twitter_creator_account or share_info.twitter_account)
   118             yield ContentMeta('twitter:creator', share_info.twitter_creator_account or share_info.twitter_account)
   118         if illustration is not None:
       
   119             yield ContentMeta('twitter:card', 'summary_large_image')
       
   120         else:
       
   121             yield ContentMeta('twitter:card', 'summary')
       
   122         yield ContentMeta('twitter:title', i18n.query_attribute('title', lang=lang, request=request))
   119         yield ContentMeta('twitter:title', i18n.query_attribute('title', lang=lang, request=request))
   123         if description:
   120         if description:
   124             yield ContentMeta('twitter:description', description)
   121             yield ContentMeta('twitter:description', description)
       
   122         if thumbnail is not None:
       
   123             yield ContentMeta('twitter:card', 'summary_large_image')
       
   124             yield ContentMeta('twitter:image', absolute_url(thumbnail, request))
       
   125             if alt:
       
   126                 yield ContentMeta('twitter:image:alt', alt)
       
   127         else:
       
   128             yield ContentMeta('twitter:card', 'summary')
   125 
   129 
   126         # Schema.org properties
   130         # Schema.org properties
   127         yield SchemaMeta('name', i18n.query_attribute('title', lang=lang, request=request))
   131         yield SchemaMeta('name', i18n.query_attribute('title', lang=lang, request=request))
   128         if description:
   132         if description:
   129             yield SchemaMeta('description', description)
   133             yield SchemaMeta('description', description)