--- a/src/pyams_content/shared/view/zmi/properties.py Tue Jul 17 18:01:26 2018 +0200
+++ b/src/pyams_content/shared/view/zmi/properties.py Tue Jul 17 18:01:54 2018 +0200
@@ -14,17 +14,22 @@
# import standard library
+import json
# import interfaces
from pyams_content.shared.view.interfaces import IWfView
from pyams_form.interfaces.form import IInnerSubForm
from pyams_skin.layer import IPyAMSLayer
+from pyams_utils.interfaces.data import IObjectData
# import packages
+from pyams_content.shared.common.types import get_all_data_types
from pyams_content.shared.common.zmi.properties import SharedContentPropertiesEditForm
+from pyams_form.widget import HiddenSelect2FieldWidget
from pyams_utils.adapter import adapter_config
from pyams_zmi.form import InnerAdminEditForm
from z3c.form import field
+from zope.interface import alsoProvides
from pyams_content import _
@@ -41,5 +46,19 @@
fieldset_class = 'bordered no-x-margin margin-y-10'
fields = field.Fields(IWfView).select('select_context_type', 'selected_content_types',
+ 'select_context_datatype', 'selected_datatypes',
'order_by', 'reversed_order', 'limit')
+ fields['selected_datatypes'].widgetFactory = HiddenSelect2FieldWidget
+
weight = 1
+
+ def updateWidgets(self, prefix=None):
+ super(ViewPropertiesEditForm, self).updateWidgets(prefix)
+ if 'selected_datatypes' in self.widgets:
+ widget = self.widgets['selected_datatypes']
+ # widget.multiple = True
+ widget.object_data = {
+ 'ams-select2-multiple': True,
+ 'ams-select2-data': json.dumps(get_all_data_types(self.request))
+ }
+ alsoProvides(widget, IObjectData)