--- a/src/pyams_content/component/paragraph/zmi/container.py Sun Nov 26 09:50:28 2017 +0100
+++ b/src/pyams_content/component/paragraph/zmi/container.py Sun Nov 26 09:51:48 2017 +0100
@@ -19,9 +19,10 @@
# import interfaces
from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
from pyams_content.component.association.interfaces import IAssociationContainer
-from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer, IBaseParagraph
+from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer, IBaseParagraph, \
+ IParagraphFactorySettings
from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor, IParagraphTitleToolbar, \
- IParagraphContainerTable, IParagraphsParentForm, IParagraphContainerView
+ IParagraphContainerTable, IParagraphContainerView
from pyams_form.interfaces.form import IFormSecurityContext, IInnerSubForm
from pyams_i18n.interfaces import II18n
from pyams_skin.interfaces import IInnerPage, IPageHeader
@@ -43,12 +44,13 @@
from pyams_skin.viewlet.menu import MenuItem
from pyams_template.template import template_config
from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter, NullAdapter
+from pyams_utils.traversing import get_parent
from pyams_utils.url import absolute_url
from pyams_viewlet.manager import viewletmanager_config, WeightOrderedViewletManager, TemplateBasedViewletManager
from pyramid.exceptions import NotFound
from pyramid.view import view_config
from pyams_viewlet.viewlet import viewlet_config, Viewlet
-from pyams_zmi.form import AdminDialogDisplayForm, InnerAdminDisplayForm
+from pyams_zmi.form import AdminDialogDisplayForm
from pyams_zmi.view import AdminView, ContainerAdminView
from pyramid.decorator import reify
from z3c.form import field
@@ -113,7 +115,13 @@
def render(self):
if not self.values:
translate = self.request.localizer.translate
- return translate(_("No currently defined paragraph."))
+ message = translate(_("No currently defined paragraph."))
+ manager = get_parent(self.context, IParagraphFactorySettings)
+ if (manager is not None) and not manager.allowed_paragraphs:
+ message = '{0}<br />{1}'.format(message,
+ translate(_("Check allowed paragraph types to be able to create new "
+ "paragraphs.")))
+ return message
return super(ParagraphContainerBaseTable, self).render()