--- a/src/pyams_content/shared/form/__init__.py Mon Jun 11 15:18:58 2018 +0200
+++ b/src/pyams_content/shared/form/__init__.py Mon Jun 11 15:22:01 2018 +0200
@@ -21,11 +21,13 @@
from pyams_content.features.review.interfaces import IReviewTarget
from pyams_content.shared.form.interfaces import IWfForm, IForm, FORM_CONTENT_TYPE, FORM_CONTENT_NAME, \
IFormFieldContainerTarget, IFormHandler, IFormFieldContainer, IWfFormFactory
+from pyams_portal.interfaces import IPortalPage, PORTAL_PAGE_KEY, IPortalContext
# import packages
from pyams_content.shared.common import WfSharedContent, SharedContent, register_content_type, WfSharedContentChecker, \
IWfSharedContentFactory
-from pyams_utils.adapter import adapter_config
+from pyams_content.shared.common.portal import SharedContentPortalPage
+from pyams_utils.adapter import adapter_config, get_annotation_adapter
from pyams_utils.registry import get_global_registry
from zope.interface import implementer, provider, alsoProvides, noLongerProvides
from zope.schema.fieldproperty import FieldProperty
@@ -34,7 +36,7 @@
@implementer(IWfForm, IFormFieldContainerTarget,
- IPreviewTarget, IReviewTarget)
+ IPortalContext, IPreviewTarget, IReviewTarget)
class WfForm(WfSharedContent):
"""Base form"""
@@ -88,6 +90,12 @@
return WfForm
+@adapter_config(context=IWfForm, provides=IPortalPage)
+def form_portal_page_adapter(context):
+ """Form portal page adapter"""
+ return get_annotation_adapter(context, PORTAL_PAGE_KEY, SharedContentPortalPage)
+
+
@adapter_config(name='properties', context=IWfForm, provides=IContentChecker)
class WfFormContentChecker(WfSharedContentChecker):
"""Form content checker"""