# HG changeset patch # User Thierry Florac # Date 1567606052 -7200 # Node ID 9b9c178bcf87c2fc9d0a6b6d069ed84ce89e17be # Parent 2c473861fcc2719aa3d61fdaff834b624adf73c2 Added generic IContentTitle interface and adapters diff -r 2c473861fcc2 -r 9b9c178bcf87 src/pyams_default_theme/interfaces.py --- a/src/pyams_default_theme/interfaces.py Wed Sep 04 16:06:52 2019 +0200 +++ b/src/pyams_default_theme/interfaces.py Wed Sep 04 16:07:32 2019 +0200 @@ -15,6 +15,10 @@ from zope.interface import Interface, Attribute +class IContentTitle(Interface): + """Content title""" + + class IContentNavigationTitle(Interface): """Content navigation title""" diff -r 2c473861fcc2 -r 9b9c178bcf87 src/pyams_default_theme/shared/common/__init__.py --- a/src/pyams_default_theme/shared/common/__init__.py Wed Sep 04 16:06:52 2019 +0200 +++ b/src/pyams_default_theme/shared/common/__init__.py Wed Sep 04 16:07:32 2019 +0200 @@ -10,12 +10,11 @@ # FOR A PARTICULAR PURPOSE. # -__docformat__ = 'restructuredtext' - from zope.interface import Interface +from pyams_content.interfaces import IBaseContent from pyams_content.shared.common.interfaces import IWfSharedContent -from pyams_default_theme.interfaces import IContentDate, IContentTag +from pyams_default_theme.interfaces import IContentDate, IContentTag, IContentTitle from pyams_i18n.interfaces import II18n from pyams_skin.interfaces.metas import IHTMLContentMetas from pyams_skin.layer import IPyAMSUserLayer @@ -26,7 +25,11 @@ from pyams_workflow.interfaces import IWorkflowPublicationInfo -@adapter_config(name='title', context=(IWfSharedContent, IPyAMSUserLayer, Interface), provides=IHTMLContentMetas) +__docformat__ = 'restructuredtext' + + +@adapter_config(name='title', context=(IWfSharedContent, IPyAMSUserLayer, Interface), + provides=IHTMLContentMetas) class SharedContentTitleMetasAdapter(ContextRequestViewAdapter): """Title metas adapter""" @@ -43,6 +46,12 @@ yield ContentMeta('description', description) +@adapter_config(context=(IBaseContent, IPyAMSUserLayer), provides=IContentTitle) +def base_content_title_adapter(context, request): + """Base content title adapter""" + return II18n(context).query_attribute('title', request=request) + + @adapter_config(context=(IWfSharedContent, IPyAMSUserLayer), provides=IContentTag) def shared_content_tag_adapter(context, request): """Default shared content tag adapter""" diff -r 2c473861fcc2 -r 9b9c178bcf87 src/pyams_default_theme/shared/common/portlet/templates/head.pt --- a/src/pyams_default_theme/shared/common/portlet/templates/head.pt Wed Sep 04 16:06:52 2019 +0200 +++ b/src/pyams_default_theme/shared/common/portlet/templates/head.pt Wed Sep 04 16:07:32 2019 +0200 @@ -4,7 +4,9 @@