src/pyams_content/features/search/zmi/manager.py
changeset 1389 1485db1e2b5e
parent 1269 08b31decc8d7
child 1429 9b93fdd5ba30
equal deleted inserted replaced
1388:8c757af2fc50 1389:1485db1e2b5e
    11 #
    11 #
    12 
    12 
    13 __docformat__ = 'restructuredtext'
    13 __docformat__ = 'restructuredtext'
    14 
    14 
    15 from z3c.form import field
    15 from z3c.form import field
       
    16 from z3c.form.browser.checkbox import SingleCheckBoxFieldWidget
    16 
    17 
    17 from pyams_content.features.search.interfaces import ISearchManagerInfo
    18 from pyams_content.features.search.interfaces import ISearchManagerInfo
    18 from pyams_content.interfaces import MANAGE_SITE_ROOT_PERMISSION
    19 from pyams_content.interfaces import MANAGE_SITE_ROOT_PERMISSION
    19 from pyams_content.root import ISiteRoot
    20 from pyams_content.root import ISiteRoot
    20 from pyams_form.form import ajax_config
    21 from pyams_form.form import ajax_config
       
    22 from pyams_form.group import NamedWidgetsGroup
    21 from pyams_pagelet.pagelet import pagelet_config
    23 from pyams_pagelet.pagelet import pagelet_config
    22 from pyams_skin.layer import IPyAMSLayer
    24 from pyams_skin.layer import IPyAMSLayer
    23 from pyams_skin.viewlet.menu import MenuDivider, MenuItem
    25 from pyams_skin.viewlet.menu import MenuDivider, MenuItem
    24 from pyams_viewlet.viewlet import viewlet_config
    26 from pyams_viewlet.viewlet import viewlet_config
    25 from pyams_zmi.form import AdminDialogEditForm
    27 from pyams_zmi.form import AdminDialogEditForm
    55     prefix = 'search_manager.'
    57     prefix = 'search_manager.'
    56 
    58 
    57     legend = _("Search engine settings")
    59     legend = _("Search engine settings")
    58     dialog_class = 'modal-large'
    60     dialog_class = 'modal-large'
    59 
    61 
    60     fields = field.Fields(ISearchManagerInfo)
    62     fields = field.Fields(ISearchManagerInfo).omit('references')
       
    63     fields['enable_tags_search'].widgetFactory = SingleCheckBoxFieldWidget
       
    64     fields['enable_collections_search'].widgetFactory = SingleCheckBoxFieldWidget
       
    65 
    61     edit_permission = MANAGE_SITE_ROOT_PERMISSION
    66     edit_permission = MANAGE_SITE_ROOT_PERMISSION
    62 
    67 
    63     def getContent(self):
    68     def getContent(self):
    64         return ISearchManagerInfo(self.context)
    69         return ISearchManagerInfo(self.context)
       
    70 
       
    71     def updateGroups(self):
       
    72         self.add_group(NamedWidgetsGroup(self, 'tags_search', self.widgets,
       
    73                                          ('enable_tags_search', 'tags_search_target'),
       
    74                                          legend=_("Enable search by tag"),
       
    75                                          css_class='inner',
       
    76                                          switch=True,
       
    77                                          checkbox_switch=True,
       
    78                                          checkbox_field=ISearchManagerInfo['enable_tags_search']))
       
    79         self.add_group(NamedWidgetsGroup(self, 'collections_search', self.widgets,
       
    80                                          ('enable_collections_search',
       
    81                                           'collections_search_target'),
       
    82                                          legend=_("Enable search by collection"),
       
    83                                          css_class='inner',
       
    84                                          switch=True,
       
    85                                          checkbox_switch=True,
       
    86                                          checkbox_field=ISearchManagerInfo[
       
    87                                              'enable_collections_search']))
       
    88         super(SearchManagerPropertiesEditForm, self).updateGroups()