src/pyams_content/features/search/zmi/manager.py
changeset 1389 1485db1e2b5e
parent 1269 08b31decc8d7
child 1429 9b93fdd5ba30
--- a/src/pyams_content/features/search/zmi/manager.py	Wed Jun 24 12:07:40 2020 +0200
+++ b/src/pyams_content/features/search/zmi/manager.py	Fri Jun 26 12:54:13 2020 +0200
@@ -13,11 +13,13 @@
 __docformat__ = 'restructuredtext'
 
 from z3c.form import field
+from z3c.form.browser.checkbox import SingleCheckBoxFieldWidget
 
 from pyams_content.features.search.interfaces import ISearchManagerInfo
 from pyams_content.interfaces import MANAGE_SITE_ROOT_PERMISSION
 from pyams_content.root import ISiteRoot
 from pyams_form.form import ajax_config
+from pyams_form.group import NamedWidgetsGroup
 from pyams_pagelet.pagelet import pagelet_config
 from pyams_skin.layer import IPyAMSLayer
 from pyams_skin.viewlet.menu import MenuDivider, MenuItem
@@ -57,8 +59,30 @@
     legend = _("Search engine settings")
     dialog_class = 'modal-large'
 
-    fields = field.Fields(ISearchManagerInfo)
+    fields = field.Fields(ISearchManagerInfo).omit('references')
+    fields['enable_tags_search'].widgetFactory = SingleCheckBoxFieldWidget
+    fields['enable_collections_search'].widgetFactory = SingleCheckBoxFieldWidget
+
     edit_permission = MANAGE_SITE_ROOT_PERMISSION
 
     def getContent(self):
         return ISearchManagerInfo(self.context)
+
+    def updateGroups(self):
+        self.add_group(NamedWidgetsGroup(self, 'tags_search', self.widgets,
+                                         ('enable_tags_search', 'tags_search_target'),
+                                         legend=_("Enable search by tag"),
+                                         css_class='inner',
+                                         switch=True,
+                                         checkbox_switch=True,
+                                         checkbox_field=ISearchManagerInfo['enable_tags_search']))
+        self.add_group(NamedWidgetsGroup(self, 'collections_search', self.widgets,
+                                         ('enable_collections_search',
+                                          'collections_search_target'),
+                                         legend=_("Enable search by collection"),
+                                         css_class='inner',
+                                         switch=True,
+                                         checkbox_switch=True,
+                                         checkbox_field=ISearchManagerInfo[
+                                             'enable_collections_search']))
+        super(SearchManagerPropertiesEditForm, self).updateGroups()
\ No newline at end of file