src/pyams_thesaurus/zmi/thesaurus.py
changeset 19 6cb6acc05cc3
parent 16 33f22d044f62
child 22 9f1ca1ad2a12
--- a/src/pyams_thesaurus/zmi/thesaurus.py	Thu Oct 08 11:41:02 2015 +0200
+++ b/src/pyams_thesaurus/zmi/thesaurus.py	Thu Oct 08 12:15:52 2015 +0200
@@ -23,10 +23,12 @@
 from pyams_skin.interfaces import IPageHeader, IInnerPage
 from pyams_skin.interfaces.container import ITableElementName, ITableElementEditor
 from pyams_skin.interfaces.viewlet import IToolbarAddingMenu
+from pyams_thesaurus.interfaces import MANAGE_THESAURUS_CONTENT_PERMISSION
 from pyams_thesaurus.interfaces.loader import IThesaurusLoader, IThesaurusUpdaterConfiguration, \
     IThesaurusExporterConfiguration, IThesaurusExporter
 from pyams_thesaurus.interfaces.thesaurus import IThesaurusInfo, IThesaurus, IThesaurusExtracts
 from pyams_thesaurus.zmi.interfaces import IThesaurusTermsMenu, IThesaurusView
+from pyams_utils.interfaces import VIEW_PERMISSION, VIEW_SYSTEM_PERMISSION, MANAGE_SYSTEM_PERMISSION
 from pyams_utils.interfaces.tree import INode, ITree
 from pyams_zmi.interfaces import IAdminView
 from pyams_zmi.interfaces.menu import ISiteManagementMenu, IPropertiesMenu
@@ -79,7 +81,7 @@
 
 
 @viewlet_config(name='add-thesaurus.menu', context=ISite, layer=IAdminLayer,
-                view=UtilitiesTable, manager=IToolbarAddingMenu, permission='system.manage')
+                view=UtilitiesTable, manager=IToolbarAddingMenu, permission=MANAGE_SYSTEM_PERMISSION)
 class ThesaurusAddMenu(ToolbarMenuItem):
     """Thesaurus add menu"""
 
@@ -89,7 +91,7 @@
     modal_target = True
 
 
-@pagelet_config(name='add-thesaurus.html', context=ISite, layer=IPyAMSLayer, permission='system.manage')
+@pagelet_config(name='add-thesaurus.html', context=ISite, layer=IPyAMSLayer, permission=MANAGE_SYSTEM_PERMISSION)
 class ThesaurusAddForm(AdminDialogAddForm):
     """Thesaurus add form"""
 
@@ -130,7 +132,7 @@
 
 
 @view_config(name='add-thesaurus.json', context=ISite, request_type=IPyAMSLayer,
-             permission='system.manage', renderer='json', xhr=True)
+             permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
 class ThesaurusAJAXAddForm(AJAXAddForm, ThesaurusAddForm):
     """Thesaurus add form, AJAX view"""
 
@@ -172,7 +174,7 @@
 
 
 @viewlet_config(name='properties.menu', layer=IAdminLayer, context=IThesaurus, manager=ISiteManagementMenu,
-                permission='system.view', weight=1)
+                permission=VIEW_SYSTEM_PERMISSION, weight=1)
 @viewletmanager_config(name='properties.menu', layer=IAdminLayer, context=IThesaurus, provides=IPropertiesMenu)
 @implementer(IPropertiesMenu)
 class ThesaurusPropertiesMenuItem(MenuItem):
@@ -183,7 +185,7 @@
     url = '#properties.html'
 
 
-@pagelet_config(name='properties.html', context=IThesaurus, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='properties.html', context=IThesaurus, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
 @implementer(IWidgetForm, IInnerPage, IThesaurusView)
 class ThesaurusPropertiesEditForm(AdminEditForm):
     """Thesaurus properties edit form"""
@@ -199,7 +201,7 @@
     fields = field.Fields(IThesaurusInfo).select('name', 'title', 'subject', 'description', 'language', 'creator',
                                                  'publisher', 'created')
     ajax_handler = 'properties.json'
-    edit_permission = 'system.manage'
+    edit_permission = MANAGE_SYSTEM_PERMISSION
 
     def updateWidgets(self, prefix=None):
         super(ThesaurusPropertiesEditForm, self).updateWidgets(prefix)
@@ -208,7 +210,7 @@
 
 
 @view_config(name='properties.json', context=IThesaurus, request_type=IPyAMSLayer,
-             permission='system.manage', renderer='json', xhr=True)
+             permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
 class ThesaurusPropertiesAJAXEditForm(AJAXEditForm, ThesaurusPropertiesEditForm):
     """Thesaurus properties edit form, AJAX view"""
 
@@ -218,7 +220,7 @@
 #
 
 @viewlet_config(name='terms.menu', context=IThesaurus, layer=IAdminLayer, manager=ISiteManagementMenu,
-                permission='system.view', weight=10)
+                permission=VIEW_SYSTEM_PERMISSION, weight=10)
 @viewletmanager_config(name='terms.menu', layer=IAdminLayer, context=IThesaurus, provides=IThesaurusTermsMenu)
 @implementer(IThesaurusTermsMenu)
 class ThesaurusTermsMenuItem(MenuItem):
@@ -229,7 +231,7 @@
     url = '#terms.html'
 
 
-@pagelet_config(name='terms.html', context=IThesaurus, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='terms.html', context=IThesaurus, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
 @template_config(template='templates/terms-tree.pt', layer=IPyAMSLayer)
 @implementer(IAdminView, IThesaurusView)
 class ThesaurusTermsView(InnerPage):
@@ -284,7 +286,7 @@
 
 
 @view_config(name='get-nodes.json', context=IThesaurus, request_type=IPyAMSLayer,
-             permission='view', renderer='json', xhr=True)
+             permission=VIEW_PERMISSION, renderer='json', xhr=True)
 class ThesaurusTermNodes(BaseTreeNodesView):
     """Get thesaurus nodes"""
 
@@ -302,7 +304,7 @@
 
 
 @view_config(name='get-parent-nodes.json', context=IThesaurus, request_type=IPyAMSLayer,
-             permission='view', renderer='json', xhr=True)
+             permission=VIEW_PERMISSION, renderer='json', xhr=True)
 class ThesaurusTermParentNodes(BaseTreeNodesView):
     """Get thesaurus parent nodes"""
 
@@ -327,7 +329,7 @@
 
 
 @view_config(name='switch-extract.json', context=IThesaurus, request_type=IPyAMSLayer,
-             permission='thesaurus.manage', renderer='json', xhr=True)
+             permission=MANAGE_THESAURUS_CONTENT_PERMISSION, renderer='json', xhr=True)
 def switch_term_extract(request):
     """Term extract switcher"""
     label = request.params.get('term')
@@ -356,7 +358,7 @@
 #
 
 @viewlet_config(name='import.menu', context=IThesaurus, layer=IAdminLayer, manager=IThesaurusTermsMenu,
-                permission='system.manage', weight=10)
+                permission=MANAGE_SYSTEM_PERMISSION, weight=10)
 class ThesaurusImportMenuItem(MenuItem):
     """Thesaurus import menu"""
 
@@ -374,7 +376,7 @@
     add = button.Button(name='add', title=_("Import terms"))
 
 
-@pagelet_config(name='import.html', context=IThesaurus, layer=IPyAMSLayer, permission='system.manage')
+@pagelet_config(name='import.html', context=IThesaurus, layer=IPyAMSLayer, permission=MANAGE_SYSTEM_PERMISSION)
 class ThesaurusImportForm(AdminDialogAddForm):
     """Thesaurus import form"""
 
@@ -415,7 +417,7 @@
 
 
 @view_config(name='import.json', context=IThesaurus, request_type=IPyAMSLayer,
-             permission='system.manage', renderer='json', xhr=True)
+             permission=MANAGE_SYSTEM_PERMISSION, renderer='json', xhr=True)
 class ThesaurusImportAJAXForm(AJAXAddForm, ThesaurusImportForm):
     """Thesaurus import form, AJAX view"""
 
@@ -425,7 +427,7 @@
 #
 
 @viewlet_config(name='export.menu', context=IThesaurus, layer=IAdminLayer, manager=IThesaurusTermsMenu,
-                permission='system.view', weight=15)
+                permission=VIEW_SYSTEM_PERMISSION, weight=15)
 class ThesaurusExportMenuItem(MenuItem):
     """Thesaurus export menu"""
 
@@ -443,7 +445,7 @@
     add = button.Button(name='add', title=_("Export terms"))
 
 
-@pagelet_config(name='export.html', context=IThesaurus, layer=IPyAMSLayer, permission='system.view')
+@pagelet_config(name='export.html', context=IThesaurus, layer=IPyAMSLayer, permission=VIEW_SYSTEM_PERMISSION)
 class ThesaurusExportForm(AdminDialogAddForm):
     """Thesaurus export form"""
 
@@ -467,7 +469,7 @@
         return exporter.export(self.context, configuration)
 
 
-@view_config(name='export.xml', context=IThesaurus, request_type=IPyAMSLayer, permission='system.manage')
+@view_config(name='export.xml', context=IThesaurus, request_type=IPyAMSLayer, permission=MANAGE_SYSTEM_PERMISSION)
 class ThesaurusExportAJAXForm(AJAXAddForm, ThesaurusExportForm):
     """Thesaurus export form, AJAX view"""