Source code for pyams_thesaurus

#
# Copyright (c) 2008-2015 Thierry Florac <tflorac AT ulthar.net>
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#

__docformat__ = 'restructuredtext'


from pyramid.i18n import TranslationStringFactory
_ = TranslationStringFactory('pyams_thesaurus')


[docs]def includeme(config): """Pyramid include""" from pyams_security.interfaces import SYSTEM_ADMIN_ROLE, ADMIN_USER_ID from pyams_thesaurus.interfaces import CREATE_THESAURUS_PERMISSION, ADMIN_THESAURUS_PERMISSION, \ MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION, THESAURUS_ADMIN_ROLE, \ THESAURUS_MANAGER_ROLE, THESAURUS_EXTRACT_MANAGER_ROLE from pyams_utils.interfaces import VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION from .include import include_package include_package(config) # register custom permissions config.register_permission({'id': CREATE_THESAURUS_PERMISSION, 'title': _("Create thesaurus")}) config.register_permission({'id': ADMIN_THESAURUS_PERMISSION, 'title': _("Manage thesaurus properties")}) config.register_permission({'id': MANAGE_THESAURUS_CONTENT_PERMISSION, 'title': _("Manage thesaurus content")}) config.register_permission({'id': MANAGE_THESAURUS_EXTRACT_PERMISSION, 'title': _("Manage thesaurus extract")}) # register custom roles config.register_role({'id': THESAURUS_ADMIN_ROLE, 'title': _("Thesaurus administrator (role)"), 'permissions': {ADMIN_THESAURUS_PERMISSION, MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION, VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, 'managers': {ADMIN_USER_ID, 'role:{0}'.format(SYSTEM_ADMIN_ROLE)}}) config.register_role({'id': THESAURUS_MANAGER_ROLE, 'title': _("Thesaurus content manager (role)"), 'permissions': {MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION, VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, 'managers': {ADMIN_USER_ID, 'role:{0}'.format(SYSTEM_ADMIN_ROLE), 'role:{0}'.format(THESAURUS_ADMIN_ROLE)}}) config.register_role({'id': THESAURUS_EXTRACT_MANAGER_ROLE, 'title': _("Thesaurus extract manager (role)"), 'permissions': {MANAGE_THESAURUS_EXTRACT_PERMISSION, VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, 'managers': {ADMIN_USER_ID, 'role:{0}'.format(SYSTEM_ADMIN_ROLE), 'role:{0}'.format(THESAURUS_ADMIN_ROLE)}})