Added the permission for viewing, creating, editing and deleting metadata types
This commit is contained in:
@@ -9,11 +9,22 @@ PERMISSION_METADATA_DOCUMENT_EDIT = {'namespace': 'metadata', 'name': u'metadata
|
||||
PERMISSION_METADATA_DOCUMENT_ADD = {'namespace': 'metadata', 'name': u'metadata_document_add', 'label': _(u'Add metadata to a document')}
|
||||
PERMISSION_METADATA_DOCUMENT_REMOVE = {'namespace': 'metadata', 'name': u'metadata_document_remove', 'label': _(u'Remove metadata from a document')}
|
||||
|
||||
PERMISSION_METADATA_TYPE_EDIT = {'namespace': 'metadata_setup', 'name': u'metadata_type_edit', 'label': _(u'Edit metadata types')}
|
||||
PERMISSION_METADATA_TYPE_CREATE = {'namespace': 'metadata_setup', 'name': u'metadata_type_create', 'label': _(u'Create new metadata types')}
|
||||
PERMISSION_METADATA_TYPE_DELETE = {'namespace': 'metadata_setup', 'name': u'metadata_type_delete', 'label': _(u'Delete metadata types')}
|
||||
PERMISSION_METADATA_TYPE_VIEW = {'namespace': 'metadata_setup', 'name': u'metadata_type_view', 'label': _(u'View metadata types')}
|
||||
|
||||
set_namespace_title('metadata', _(u'Metadata'))
|
||||
register_permission(PERMISSION_METADATA_DOCUMENT_EDIT)
|
||||
register_permission(PERMISSION_METADATA_DOCUMENT_ADD)
|
||||
register_permission(PERMISSION_METADATA_DOCUMENT_REMOVE)
|
||||
|
||||
set_namespace_title('metadata_setup', _(u'Metadata setup'))
|
||||
register_permission(PERMISSION_METADATA_TYPE_EDIT)
|
||||
register_permission(PERMISSION_METADATA_TYPE_CREATE)
|
||||
register_permission(PERMISSION_METADATA_TYPE_DELETE)
|
||||
register_permission(PERMISSION_METADATA_TYPE_VIEW)
|
||||
|
||||
metadata_edit = {'text': _(u'edit metadata'), 'view': 'metadata_edit', 'args': 'object.id', 'famfam': 'xhtml_go', 'permissions': [PERMISSION_METADATA_DOCUMENT_EDIT]}
|
||||
metadata_multiple_edit = {'text': _(u'edit metadata'), 'view': 'metadata_multiple_edit', 'famfam': 'xhtml_go', 'permissions': [PERMISSION_METADATA_DOCUMENT_EDIT]}
|
||||
metadata_add = {'text': _(u'add metadata'), 'view': 'metadata_add', 'args': 'object.id', 'famfam': 'xhtml_add', 'permissions': [PERMISSION_METADATA_DOCUMENT_ADD]}
|
||||
@@ -21,11 +32,10 @@ metadata_multiple_add = {'text': _(u'add metadata'), 'view': 'metadata_multiple_
|
||||
metadata_remove = {'text': _(u'remove metadata'), 'view': 'metadata_remove', 'args': 'object.id', 'famfam': 'xhtml_delete', 'permissions': [PERMISSION_METADATA_DOCUMENT_REMOVE]}
|
||||
metadata_multiple_remove = {'text': _(u'remove metadata'), 'view': 'metadata_multiple_remove', 'famfam': 'xhtml_delete', 'permissions': [PERMISSION_METADATA_DOCUMENT_REMOVE]}
|
||||
|
||||
setup_metadata_type_list = {'text': _(u'metadata types'), 'view': 'setup_metadata_type_list', 'famfam': 'xhtml_go'}#, 'permissions': [PERMISSION_METADATA_DOCUMENT_EDIT]}
|
||||
setup_metadata_type_edit = {'text': _(u'edit'), 'view': 'setup_metadata_type_edit', 'args': 'object.id', 'famfam': 'xhtml'}#, 'permissions': [PERMISSION_METADATA_DOCUMENT_EDIT]}
|
||||
setup_metadata_type_delete = {'text': _(u'delete'), 'view': 'setup_metadata_type_delete', 'args': 'object.id', 'famfam': 'xhtml_delete'}#, 'permissions': [PERMISSION_METADATA_DOCUMENT_EDIT]}
|
||||
setup_metadata_type_create = {'text': _(u'create new'), 'view': 'setup_metadata_type_create', 'famfam': 'xhtml_add'}#, 'permissions': [PERMISSION_METADATA_DOCUMENT_EDIT]}
|
||||
|
||||
setup_metadata_type_list = {'text': _(u'metadata types'), 'view': 'setup_metadata_type_list', 'famfam': 'xhtml_go', 'permissions': [PERMISSION_METADATA_TYPE_VIEW]}
|
||||
setup_metadata_type_edit = {'text': _(u'edit'), 'view': 'setup_metadata_type_edit', 'args': 'object.id', 'famfam': 'xhtml', 'permissions': [PERMISSION_METADATA_TYPE_EDIT]}
|
||||
setup_metadata_type_delete = {'text': _(u'delete'), 'view': 'setup_metadata_type_delete', 'args': 'object.id', 'famfam': 'xhtml_delete', 'permissions': [PERMISSION_METADATA_TYPE_DELETE]}
|
||||
setup_metadata_type_create = {'text': _(u'create new'), 'view': 'setup_metadata_type_create', 'famfam': 'xhtml_add', 'permissions': [PERMISSION_METADATA_TYPE_CREATE]}
|
||||
|
||||
register_links(Document, [metadata_add, metadata_edit, metadata_remove])
|
||||
register_multi_item_links(['document_type_document_list', 'search', 'results', 'document_group_view', 'document_list', 'document_list_recent'], [metadata_multiple_add, metadata_multiple_edit, metadata_multiple_remove])
|
||||
|
||||
@@ -12,7 +12,9 @@ from permissions.api import check_permissions
|
||||
from document_indexing.api import update_indexes, delete_indexes
|
||||
|
||||
from metadata import PERMISSION_METADATA_DOCUMENT_EDIT, \
|
||||
PERMISSION_METADATA_DOCUMENT_ADD, PERMISSION_METADATA_DOCUMENT_REMOVE
|
||||
PERMISSION_METADATA_DOCUMENT_ADD, PERMISSION_METADATA_DOCUMENT_REMOVE, \
|
||||
PERMISSION_METADATA_TYPE_EDIT, PERMISSION_METADATA_TYPE_CREATE, \
|
||||
PERMISSION_METADATA_TYPE_DELETE, PERMISSION_METADATA_TYPE_VIEW
|
||||
from metadata.forms import MetadataFormSet, AddMetadataForm, \
|
||||
MetadataRemoveFormSet, MetadataTypeForm
|
||||
from metadata.api import save_metadata_list
|
||||
@@ -264,7 +266,7 @@ def metadata_multiple_remove(request):
|
||||
|
||||
|
||||
def setup_metadata_type_list(request):
|
||||
#check_permissions(request.user, [PERMISSION_DOCUMENT_VIEW])
|
||||
check_permissions(request.user, [PERMISSION_METADATA_TYPE_VIEW])
|
||||
|
||||
context = {
|
||||
'object_list': MetadataType.objects.all(),
|
||||
@@ -283,7 +285,8 @@ def setup_metadata_type_list(request):
|
||||
|
||||
|
||||
def setup_metadata_type_edit(request, metadatatype_id):
|
||||
#check_permissions(request.user, [PERMISSION_DOCUMENT_VIEW])
|
||||
check_permissions(request.user, [PERMISSION_METADATA_TYPE_EDIT])
|
||||
|
||||
metadata_type = get_object_or_404(MetadataType, pk=metadatatype_id)
|
||||
|
||||
if request.method == 'POST':
|
||||
@@ -310,6 +313,8 @@ def setup_metadata_type_edit(request, metadatatype_id):
|
||||
|
||||
|
||||
def setup_metadata_type_create(request):
|
||||
check_permissions(request.user, [PERMISSION_METADATA_TYPE_CREATE])
|
||||
|
||||
if request.method == 'POST':
|
||||
form = MetadataTypeForm(request.POST)
|
||||
if form.is_valid():
|
||||
@@ -327,6 +332,8 @@ def setup_metadata_type_create(request):
|
||||
|
||||
|
||||
def setup_metadata_type_delete(request, metadatatype_id):
|
||||
check_permissions(request.user, [PERMISSION_METADATA_TYPE_DELETE])
|
||||
|
||||
metadata_type = get_object_or_404(MetadataType, pk=metadatatype_id)
|
||||
|
||||
post_action_redirect = reverse('setup_metadata_type_list')
|
||||
|
||||
Reference in New Issue
Block a user