src/pyams_content/component/theme/zmi/manager.py
changeset 1163 b15d210297bc
parent 1070 ea0c7ac589c4
child 1268 80972f038505
equal deleted inserted replaced
1162:d8d05f5c83ba 1163:b15d210297bc
    10 # FOR A PARTICULAR PURPOSE.
    10 # FOR A PARTICULAR PURPOSE.
    11 #
    11 #
    12 
    12 
    13 __docformat__ = 'restructuredtext'
    13 __docformat__ = 'restructuredtext'
    14 
    14 
    15 
    15 from z3c.form import field
    16 # import standard library
    16 from z3c.form.browser.checkbox import SingleCheckBoxFieldWidget
    17 
    17 from zope.interface import alsoProvides
    18 # import interfaces
    18 
    19 from pyams_content.component.theme.interfaces import \
    19 from pyams_content.component.theme.interfaces import \
    20     ITagsManagerTarget, ITagsManager, \
    20     ITagsManagerTarget, ITagsManager, \
    21     IThemesManagerTarget, IThemesManager, \
    21     IThemesManagerTarget, IThemesManager, \
    22     ICollectionsManagerTarget, ICollectionsManager
    22     ICollectionsManagerTarget, ICollectionsManager
    23 from pyams_content.interfaces import MANAGE_TOOL_PERMISSION, MANAGE_SITE_ROOT_PERMISSION
    23 from pyams_content.interfaces import MANAGE_TOOL_PERMISSION, MANAGE_SITE_ROOT_PERMISSION
       
    24 from pyams_content.zmi import pyams_content
       
    25 from pyams_form.form import ajax_config
       
    26 from pyams_form.group import NamedWidgetsGroup
       
    27 from pyams_pagelet.pagelet import pagelet_config
    24 from pyams_skin.layer import IPyAMSLayer
    28 from pyams_skin.layer import IPyAMSLayer
       
    29 from pyams_skin.viewlet.menu import MenuItem, MenuDivider
       
    30 from pyams_utils.fanstatic import get_resource_path
    25 from pyams_utils.interfaces.data import IObjectData
    31 from pyams_utils.interfaces.data import IObjectData
       
    32 from pyams_viewlet.viewlet import viewlet_config
       
    33 from pyams_zmi.form import AdminDialogEditForm
    26 from pyams_zmi.interfaces.menu import IPropertiesMenu
    34 from pyams_zmi.interfaces.menu import IPropertiesMenu
    27 from pyams_zmi.layer import IAdminLayer
    35 from pyams_zmi.layer import IAdminLayer
    28 
       
    29 # import packages
       
    30 from pyams_content.zmi import pyams_content
       
    31 from pyams_form.form import ajax_config
       
    32 from pyams_pagelet.pagelet import pagelet_config
       
    33 from pyams_skin.viewlet.menu import MenuItem, MenuDivider
       
    34 from pyams_utils.fanstatic import get_resource_path
       
    35 from pyams_viewlet.viewlet import viewlet_config
       
    36 from pyams_zmi.form import AdminDialogEditForm
       
    37 from z3c.form import field
       
    38 from zope.interface import alsoProvides
       
    39 
    36 
    40 from pyams_content import _
    37 from pyams_content import _
    41 
    38 
    42 
    39 
    43 #
    40 #
    71 
    68 
    72     legend = _("Selected tags")
    69     legend = _("Selected tags")
    73     dialog_class = 'modal-large'
    70     dialog_class = 'modal-large'
    74 
    71 
    75     fields = field.Fields(ITagsManager)
    72     fields = field.Fields(ITagsManager)
       
    73     fields['enable_tags_search'].widgetFactory = SingleCheckBoxFieldWidget
       
    74     fields['enable_glossary'].widgetFactory = SingleCheckBoxFieldWidget
       
    75 
    76     edit_permission = MANAGE_SITE_ROOT_PERMISSION
    76     edit_permission = MANAGE_SITE_ROOT_PERMISSION
    77 
    77 
    78     def getContent(self):
    78     def getContent(self):
    79         return ITagsManager(self.context)
    79         return ITagsManager(self.context)
    80 
    80 
    93             'ams-events-handlers': {
    93             'ams-events-handlers': {
    94                 'select2-open': 'PyAMS_content.themes.getExtracts'
    94                 'select2-open': 'PyAMS_content.themes.getExtracts'
    95             }
    95             }
    96         }
    96         }
    97         alsoProvides(widget, IObjectData)
    97         alsoProvides(widget, IObjectData)
       
    98 
       
    99     def updateGroups(self):
       
   100         self.add_group(NamedWidgetsGroup(self, 'tags_search', self.widgets,
       
   101                                          ('enable_tags_search', 'tags_search_target'),
       
   102                                          legend=_("Enable search by tag"),
       
   103                                          css_class='inner',
       
   104                                          switch=True,
       
   105                                          checkbox_switch=True,
       
   106                                          checkbox_field=ITagsManager['enable_tags_search']))
       
   107         self.add_group(NamedWidgetsGroup(self, 'glossary', self.widgets,
       
   108                                          ('enable_glossary', 'glossary_thesaurus_name'),
       
   109                                          legend=_("Enable glossary"),
       
   110                                          css_class='inner',
       
   111                                          switch=True,
       
   112                                          checkbox_switch=True,
       
   113                                          checkbox_field=ITagsManager['enable_glossary']))
       
   114         super(TagsManagerEditForm, self).updateGroups()
    98 
   115 
    99 
   116 
   100 #
   117 #
   101 # Themes management view
   118 # Themes management view
   102 #
   119 #