--- a/src/pyams_content/features/footer/zmi/__init__.py Wed Jun 20 08:25:29 2018 +0200
+++ b/src/pyams_content/features/footer/zmi/__init__.py Wed Jun 20 18:15:39 2018 +0200
@@ -19,22 +19,26 @@
from pyams_content.features.footer.interfaces import IFooterTarget, IFooterSettings, IFooterRenderer, \
IFooterRendererSettings
from pyams_form.interfaces.form import IWidgetForm, IUncheckedEditFormButtons, IInnerSubForm, \
- IWidgetsSuffixViewletsManager
+ IWidgetsSuffixViewletsManager, IFormHelp
from pyams_portal.interfaces import MANAGE_TEMPLATE_PERMISSION
from pyams_portal.zmi.interfaces import IPortalContextTemplatePropertiesMenu
from pyams_skin.interfaces import IInnerPage
from pyams_skin.layer import IPyAMSLayer
from pyams_utils.interfaces.data import IObjectData
from pyams_utils.interfaces.inherit import IInheritInfo
+from pyams_zmi.layer import IAdminLayer
from z3c.form.interfaces import INPUT_MODE
# import packages
+from pyams_content.skin import pyams_content
from pyams_form.form import AJAXEditForm
from pyams_form.group import NamedWidgetsGroup
+from pyams_form.help import FormHelp
from pyams_pagelet.pagelet import pagelet_config
-from pyams_skin.viewlet.menu import MenuItem, MenuDivider
+from pyams_skin.viewlet.menu import MenuItem
from pyams_template.template import template_config
from pyams_utils.adapter import adapter_config
+from pyams_utils.fanstatic import get_resource_path
from pyams_utils.url import absolute_url
from pyams_viewlet.viewlet import viewlet_config, Viewlet
from pyams_zmi.form import AdminEditForm, InnerAdminEditForm
@@ -104,6 +108,17 @@
checkbox_switch=True,
checkbox_mode='disable',
checkbox_field=IFooterSettings['no_inherit'])
+ if self.mode == INPUT_MODE:
+ group.object_data = {
+ 'ams-plugins': 'pyams_content',
+ 'ams-plugin-pyams_content-src': get_resource_path(pyams_content),
+ 'ams-plugin-pyams_content-async': False,
+ 'ams-events-handlers': {
+ 'ams.checker.opened': 'PyAMS_content.footer.submitEditForm',
+ 'ams.checker.closed': 'PyAMS_content.footer.submitEditForm'
+ }
+ }
+ alsoProvides(group, IObjectData)
else:
group = NamedWidgetsGroup(self, 'footer', self.widgets, (), css_class='inner')
alsoProvides(group, IFooterSettingsGroup)
@@ -123,6 +138,19 @@
return output
+@adapter_config(context=(Interface, IAdminLayer, FooterSettingsEditForm), provides=IFormHelp)
+class FooterSettingsEditFormHelpAdapter(FormHelp):
+ """Footer settings edit form help adapter"""
+
+ def __new__(cls, context, request, view):
+ if (not view.getContent().can_inherit) or (view.mode != INPUT_MODE):
+ return None
+ return FormHelp.__new__(cls)
+
+ message = _("""WARNING: Footer properties are saved automatically when changing inherit mode!!""")
+ message_format = 'rest'
+
+
@adapter_config(name='renderer', context=(IFooterTarget, IPyAMSLayer, IFooterSettingsGroup), provides=IInnerSubForm)
class FooterSettingsRendererEditSubform(InnerAdminEditForm):
"""Footer settings renderer edit form"""