23 from zope.contentprovider.interfaces import IContentProvider |
23 from zope.contentprovider.interfaces import IContentProvider |
24 from zope.interface import Interface, implementer |
24 from zope.interface import Interface, implementer |
25 |
25 |
26 from pyams_content.component.association.interfaces import IAssociationContainer |
26 from pyams_content.component.association.interfaces import IAssociationContainer |
27 from pyams_content.component.association.zmi import AssociationsContainerView |
27 from pyams_content.component.association.zmi import AssociationsContainerView |
28 from pyams_content.component.paragraph import BaseParagraph |
28 from pyams_content.component.paragraph import BaseParagraph, IParagraphTitle |
29 from pyams_content.component.paragraph.interfaces import IBaseParagraph, IParagraphContainer, IParagraphContainerTarget, \ |
29 from pyams_content.component.paragraph.interfaces import IBaseParagraph, IParagraphContainer, IParagraphContainerTarget, \ |
30 IParagraphFactorySettings |
30 IParagraphFactorySettings |
31 from pyams_content.component.paragraph.zmi.interfaces import IParagraphContainerTable, IParagraphContainerView, \ |
31 from pyams_content.component.paragraph.zmi.interfaces import IParagraphContainerTable, IParagraphContainerView, \ |
32 IParagraphInnerEditor, IParagraphTitleToolbar, IParagraphTitleValue |
32 IParagraphInnerEditor, IParagraphTitleToolbar |
33 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION |
33 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION |
34 from pyams_content.shared.common.zmi import WfModifiedContentColumnMixin |
34 from pyams_content.shared.common.zmi import WfModifiedContentColumnMixin |
35 from pyams_content.zmi import pyams_content |
35 from pyams_content.zmi import pyams_content |
36 from pyams_form.interfaces.form import IFormSecurityContext, IInnerSubForm |
36 from pyams_form.interfaces.form import IFormSecurityContext, IInnerSubForm |
37 from pyams_form.security import ProtectedFormObjectMixin |
37 from pyams_form.security import ProtectedFormObjectMixin |
269 |
269 |
270 def renderCell(self, item): |
270 def renderCell(self, item): |
271 return '<span class="title">{0}</span>'.format(super(ParagraphContainerBaseTitleColumn, self).renderCell(item)) |
271 return '<span class="title">{0}</span>'.format(super(ParagraphContainerBaseTitleColumn, self).renderCell(item)) |
272 |
272 |
273 def getValue(self, obj): |
273 def getValue(self, obj): |
274 adapter = self.request.registry.queryMultiAdapter((obj, self.request), IParagraphTitleValue) |
274 adapter = self.request.registry.queryMultiAdapter((obj, self.request), IParagraphTitle) |
275 if adapter is not None: |
275 if adapter is not None: |
276 return adapter |
276 return adapter |
277 return II18n(obj).query_attribute('title', request=self.request) or BaseParagraph.empty_title |
277 return II18n(obj).query_attribute('title', request=self.request) or BaseParagraph.empty_title |
278 |
278 |
279 |
279 |