14 |
14 |
15 |
15 |
16 from pyramid.i18n import TranslationStringFactory |
16 from pyramid.i18n import TranslationStringFactory |
17 _ = TranslationStringFactory('pyams_thesaurus') |
17 _ = TranslationStringFactory('pyams_thesaurus') |
18 |
18 |
19 from pyams_thesaurus.interfaces import CREATE_THESAURUS_PERMISSION, ADMIN_THESAURUS_PERMISSION, \ |
|
20 MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION |
|
21 from pyams_utils.interfaces import VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION |
|
22 |
|
23 |
19 |
24 def includeme(config): |
20 def includeme(config): |
25 """Pyramid include""" |
21 """Pyramid include""" |
|
22 |
|
23 from pyams_security.interfaces import SYSTEM_ADMIN_ROLE, ADMIN_USER_ID |
|
24 from pyams_thesaurus.interfaces import CREATE_THESAURUS_PERMISSION, ADMIN_THESAURUS_PERMISSION, \ |
|
25 MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION, THESAURUS_ADMIN_ROLE, \ |
|
26 THESAURUS_MANAGER_ROLE, THESAURUS_EXTRACT_MANAGER_ROLE |
|
27 from pyams_utils.interfaces import VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION |
26 |
28 |
27 from .include import include_package |
29 from .include import include_package |
28 include_package(config) |
30 include_package(config) |
29 |
31 |
30 # register custom permissions |
32 # register custom permissions |
36 'title': _("Manage thesaurus content")}) |
38 'title': _("Manage thesaurus content")}) |
37 config.register_permission({'id': MANAGE_THESAURUS_EXTRACT_PERMISSION, |
39 config.register_permission({'id': MANAGE_THESAURUS_EXTRACT_PERMISSION, |
38 'title': _("Manage thesaurus extract")}) |
40 'title': _("Manage thesaurus extract")}) |
39 |
41 |
40 # register custom roles |
42 # register custom roles |
41 config.register_role({'id': 'thesaurus.Admin', |
43 config.register_role({'id': THESAURUS_ADMIN_ROLE, |
42 'title': _("Thesaurus administrator (role)"), |
44 'title': _("Thesaurus administrator (role)"), |
43 'permissions': {ADMIN_THESAURUS_PERMISSION, MANAGE_THESAURUS_CONTENT_PERMISSION, |
45 'permissions': {ADMIN_THESAURUS_PERMISSION, MANAGE_THESAURUS_CONTENT_PERMISSION, |
44 MANAGE_THESAURUS_EXTRACT_PERMISSION, |
46 MANAGE_THESAURUS_EXTRACT_PERMISSION, |
45 VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, |
47 VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, |
46 'managers': {'system:admin', 'role:system.Manager'}}) |
48 'managers': {ADMIN_USER_ID, |
47 config.register_role({'id': 'thesaurus.Manager', |
49 'role:{0}'.format(SYSTEM_ADMIN_ROLE)}}) |
|
50 config.register_role({'id': THESAURUS_MANAGER_ROLE, |
48 'title': _("Thesaurus content manager (role)"), |
51 'title': _("Thesaurus content manager (role)"), |
49 'permissions': {MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION, |
52 'permissions': {MANAGE_THESAURUS_CONTENT_PERMISSION, MANAGE_THESAURUS_EXTRACT_PERMISSION, |
50 VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, |
53 VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, |
51 'managers': {'system:admin', 'role:system.Manager', 'role:thesaurus.Admin'}}) |
54 'managers': {ADMIN_USER_ID, |
52 config.register_role({'id': 'thesaurus.ExtractManager', |
55 'role:{0}'.format(SYSTEM_ADMIN_ROLE), |
|
56 'role:{0}'.format(THESAURUS_ADMIN_ROLE)}}) |
|
57 config.register_role({'id': THESAURUS_EXTRACT_MANAGER_ROLE, |
53 'title': _("Thesaurus extract manager (role)"), |
58 'title': _("Thesaurus extract manager (role)"), |
54 'permissions': {MANAGE_THESAURUS_EXTRACT_PERMISSION, |
59 'permissions': {MANAGE_THESAURUS_EXTRACT_PERMISSION, |
55 VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, |
60 VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION}, |
56 'managers': {'system:admin', 'role:system.Manager', 'role:thesaurus.Admin'}}) |
61 'managers': {ADMIN_USER_ID, |
|
62 'role:{0}'.format(SYSTEM_ADMIN_ROLE), |
|
63 'role:{0}'.format(THESAURUS_ADMIN_ROLE)}}) |