src/pyams_content/component/theme/__init__.py
changeset 1389 1485db1e2b5e
parent 1240 921ff38f1aae
child 1423 31c1bc24a308
equal deleted inserted replaced
1388:8c757af2fc50 1389:1485db1e2b5e
     8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
     8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
     9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
     9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
    10 # FOR A PARTICULAR PURPOSE.
    10 # FOR A PARTICULAR PURPOSE.
    11 #
    11 #
    12 
    12 
    13 __docformat__ = 'restructuredtext'
       
    14 
       
    15 from persistent import Persistent
    13 from persistent import Persistent
    16 from zope.container.contained import Contained
    14 from zope.container.contained import Contained
    17 from zope.schema.fieldproperty import FieldProperty
    15 from zope.schema.fieldproperty import FieldProperty
    18 
    16 
    19 from pyams_content.component.theme.interfaces import IThemesManagerTarget, IThemesManager, THEMES_MANAGER_KEY, \
    17 from pyams_content.component.theme.interfaces import COLLECTIONS_INFO_KEY, \
    20     IThemesTarget, IThemesInfo, THEMES_INFO_KEY, ITagsManager, ITagsManagerTarget, TAGS_MANAGER_KEY, ITagsInfo, \
    18     COLLECTIONS_MANAGER_KEY, ICollectionsInfo, ICollectionsManager, ICollectionsManagerTarget, \
    21     ITagsTarget, TAGS_INFO_KEY, ICollectionsManager, ICollectionsManagerTarget, COLLECTIONS_MANAGER_KEY, \
    19     ICollectionsTarget, ITagsInfo, ITagsManager, ITagsManagerTarget, ITagsTarget, IThemesInfo, \
    22     ICollectionsInfo, ICollectionsTarget, COLLECTIONS_INFO_KEY
    20     IThemesManager, IThemesManagerTarget, IThemesTarget, TAGS_INFO_KEY, TAGS_MANAGER_KEY, \
       
    21     THEMES_INFO_KEY, THEMES_MANAGER_KEY
    23 from pyams_content.features.checker import BaseContentChecker
    22 from pyams_content.features.checker import BaseContentChecker
    24 from pyams_content.features.checker.interfaces import IContentChecker, ERROR_VALUE
    23 from pyams_content.features.checker.interfaces import ERROR_VALUE, IContentChecker
    25 from pyams_utils.adapter import adapter_config, get_annotation_adapter
    24 from pyams_utils.adapter import adapter_config, get_annotation_adapter
    26 from pyams_utils.factory import factory_config
    25 from pyams_utils.factory import factory_config
       
    26 
       
    27 
       
    28 __docformat__ = 'restructuredtext'
    27 
    29 
    28 from pyams_content import _
    30 from pyams_content import _
    29 
    31 
    30 
    32 
    31 #
    33 #
    36 class TagsManager(Persistent, Contained):
    38 class TagsManager(Persistent, Contained):
    37     """Tags manager persistent class"""
    39     """Tags manager persistent class"""
    38 
    40 
    39     thesaurus_name = FieldProperty(ITagsManager['thesaurus_name'])
    41     thesaurus_name = FieldProperty(ITagsManager['thesaurus_name'])
    40     extract_name = FieldProperty(ITagsManager['extract_name'])
    42     extract_name = FieldProperty(ITagsManager['extract_name'])
    41 
       
    42     enable_tags_search = FieldProperty(ITagsManager['enable_tags_search'])
       
    43     tags_search_target = FieldProperty(ITagsManager['tags_search_target'])
       
    44 
    43 
    45     enable_glossary = FieldProperty(ITagsManager['enable_glossary'])
    44     enable_glossary = FieldProperty(ITagsManager['enable_glossary'])
    46     glossary_thesaurus_name = FieldProperty(ITagsManager['glossary_thesaurus_name'])
    45     glossary_thesaurus_name = FieldProperty(ITagsManager['glossary_thesaurus_name'])
    47 
    46 
    48 
    47 
    77     def inner_check(self, request):
    76     def inner_check(self, request):
    78         output = []
    77         output = []
    79         translate = request.localizer.translate
    78         translate = request.localizer.translate
    80         tags = ITagsInfo(self.context)
    79         tags = ITagsInfo(self.context)
    81         if not tags.tags:
    80         if not tags.tags:
    82             output.append(translate(ERROR_VALUE).format(field=translate(ITagsInfo['tags'].title),
    81             output.append(translate(ERROR_VALUE).format(
    83                                                         message=translate(_("no defined tag"))))
    82                 field=translate(ITagsInfo['tags'].title),
       
    83                 message=translate(_("no defined tag"))))
    84         return output
    84         return output
    85 
    85 
    86 
    86 
    87 #
    87 #
    88 # Themes management
    88 # Themes management
   127     def inner_check(self, request):
   127     def inner_check(self, request):
   128         output = []
   128         output = []
   129         translate = request.localizer.translate
   129         translate = request.localizer.translate
   130         themes = IThemesInfo(self.context)
   130         themes = IThemesInfo(self.context)
   131         if not themes.themes:
   131         if not themes.themes:
   132             output.append(translate(ERROR_VALUE).format(field=translate(IThemesInfo['themes'].title),
   132             output.append(translate(ERROR_VALUE).format(
   133                                                         message=translate(_("no defined theme"))))
   133                 field=translate(IThemesInfo['themes'].title),
       
   134                 message=translate(_("no defined theme"))))
   134         return output
   135         return output
   135 
   136 
   136 
   137 
   137 #
   138 #
   138 # Collections management
   139 # Collections management
   177     def inner_check(self, request):
   178     def inner_check(self, request):
   178         output = []
   179         output = []
   179         translate = request.localizer.translate
   180         translate = request.localizer.translate
   180         collections = ICollectionsInfo(self.context)
   181         collections = ICollectionsInfo(self.context)
   181         if not collections.collections:
   182         if not collections.collections:
   182             output.append(translate(ERROR_VALUE).format(field=translate(ICollectionsInfo['collections'].title),
   183             output.append(translate(ERROR_VALUE).format(
   183                                                         message=translate(_("no defined collection"))))
   184                 field=translate(ICollectionsInfo['collections'].title),
       
   185                 message=translate(_("no defined collection"))))
   184         return output
   186         return output