Refactored the permissions registration, checking and definition
This commit is contained in:
@@ -1,23 +1,21 @@
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from navigation.api import register_menu
|
||||
from permissions.api import register_permissions
|
||||
from permissions.api import register_permission
|
||||
from main.api import register_tool
|
||||
|
||||
PERMISSION_DOCUMENT_INDEXING_VIEW = 'document_index_view'
|
||||
PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES = 'document_rebuild_indexes'
|
||||
PERMISSION_DOCUMENT_INDEXING_VIEW = {'namespace': 'document_indexing', 'name': 'document_index_view', 'label': _(u'View document indexes')}
|
||||
PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES = {'namespace': 'document_indexing', 'name': 'document_rebuild_indexes', 'label': _(u'Rebuild document indexes')}
|
||||
|
||||
register_permissions('document_indexing', [
|
||||
{'name': PERMISSION_DOCUMENT_INDEXING_VIEW, 'label': _(u'View document indexes')},
|
||||
{'name': PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES, 'label': _(u'Rebuild document indexes')},
|
||||
])
|
||||
register_permission(PERMISSION_DOCUMENT_INDEXING_VIEW)
|
||||
register_permission(PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES)
|
||||
|
||||
index_list = {'text': _(u'index list'), 'view': 'index_instance_list', 'famfam': 'folder_link', 'permissions': {'namespace': 'document_indexing', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]}}
|
||||
index_list = {'text': _(u'index list'), 'view': 'index_instance_list', 'famfam': 'folder_link', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]}
|
||||
|
||||
register_menu([
|
||||
{'text': _('indexes'), 'view': 'index_instance_list', 'links': [
|
||||
], 'famfam': 'folder_link', 'position': 2, 'permissions': {'namespace': 'document_indexing', 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]}}])
|
||||
], 'famfam': 'folder_link', 'position': 2, 'permissions': [PERMISSION_DOCUMENT_INDEXING_VIEW]}])
|
||||
|
||||
rebuild_index_instances = {'text': _('rebuild indexes'), 'view': 'rebuild_index_instances', 'famfam': 'folder_link', 'permissions': {'namespace': 'document_indexing', 'permissions': [PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES]}, 'description': _(u'Deletes and creates from scratch all the document indexes.')}
|
||||
rebuild_index_instances = {'text': _('rebuild indexes'), 'view': 'rebuild_index_instances', 'famfam': 'folder_link', 'permissions': [PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES], 'description': _(u'Deletes and creates from scratch all the document indexes.')}
|
||||
|
||||
register_tool(rebuild_index_instances, namespace='document_indexing', title=_(u'Indexes'))
|
||||
|
||||
@@ -16,7 +16,7 @@ from document_indexing.api import get_breadcrumbs, get_instance_link, \
|
||||
|
||||
|
||||
def index_instance_list(request, index_id=None):
|
||||
check_permissions(request.user, 'document_indexing', [PERMISSION_DOCUMENT_INDEXING_VIEW])
|
||||
check_permissions(request.user, [PERMISSION_DOCUMENT_INDEXING_VIEW])
|
||||
|
||||
if index_id:
|
||||
index_instance = get_object_or_404(IndexInstance, pk=index_id)
|
||||
@@ -39,7 +39,7 @@ def index_instance_list(request, index_id=None):
|
||||
|
||||
|
||||
def rebuild_index_instances(request):
|
||||
check_permissions(request.user, 'document_indexing', [PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES])
|
||||
check_permissions(request.user, [PERMISSION_DOCUMENT_INDEXING_REBUILD_INDEXES])
|
||||
|
||||
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', None)))
|
||||
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', None)))
|
||||
|
||||
Reference in New Issue
Block a user