diff --git a/mayan/apps/ocr/links.py b/mayan/apps/ocr/links.py index 91ad5584a1..4fe67f3315 100644 --- a/mayan/apps/ocr/links.py +++ b/mayan/apps/ocr/links.py @@ -9,17 +9,15 @@ from .permissions import ( PERMISSION_OCR_DOCUMENT_DELETE ) -link_document_submit = {'text': _('Submit to OCR queue'), 'view': 'ocr:document_submit', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} -link_document_submit_multiple = {'text': _('Submit to OCR queue'), 'view': 'ocr:document_submit_multiple', 'famfam': 'hourglass_add'} -link_entry_re_queue = {'text': _('Re-queue'), 'view': 'ocr:entry_re_queue', 'args': 'object.id', 'famfam': 'hourglass_add', 'permissions': [PERMISSION_OCR_DOCUMENT]} -link_entry_re_queue_multiple = {'text': _('Re-queue'), 'view': 'ocr:entry_re_queue_multiple', 'famfam': 'hourglass_add'} -link_entry_delete = {'text': _('Delete'), 'view': 'ocr:entry_delete', 'args': 'object.id', 'famfam': 'hourglass_delete', 'permissions': [PERMISSION_OCR_DOCUMENT_DELETE]} -link_entry_delete_multiple = {'text': _('Delete'), 'view': 'ocr:entry_delete_multiple', 'famfam': 'hourglass_delete'} - link_document_all_ocr_cleanup = Link( description=_('Runs a language filter to remove common OCR mistakes from document pages content.'), permissions=[PERMISSION_OCR_CLEAN_ALL_PAGES], text=_('Clean up pages content'), view='ocr:document_all_ocr_cleanup' ) - +link_document_submit = Link(permissions=[PERMISSION_OCR_DOCUMENT], text=_('Submit to OCR queue'), view='ocr:document_submit', args='object.id') +link_document_submit_multiple = Link(text=_('Submit to OCR queue'), view='ocr:document_submit_multiple') +link_entry_delete = Link(permissions=[PERMISSION_OCR_DOCUMENT_DELETE], text=_('Delete'), view='ocr:entry_delete', args='object.id') +link_entry_delete_multiple = Link(text=_('Delete'), view='ocr:entry_delete_multiple') link_entry_list = Link(icon='fa fa-file-text-o', permissions=[PERMISSION_OCR_DOCUMENT], text=_('OCR Errors'), view='ocr:entry_list') +link_entry_re_queue = Link(permissions=[PERMISSION_OCR_DOCUMENT], text=_('Re-queue'), view='ocr:entry_re_queue', args='object.id') +link_entry_re_queue_multiple = Link(text=_('Re-queue'), view='ocr:entry_re_queue_multiple') diff --git a/mayan/apps/permissions/links.py b/mayan/apps/permissions/links.py index b5e9f1c776..6eb22b2d25 100644 --- a/mayan/apps/permissions/links.py +++ b/mayan/apps/permissions/links.py @@ -12,9 +12,9 @@ from .permissions import ( link_permission_grant = Link(permissions=[PERMISSION_PERMISSION_GRANT], text=_('Grant'), view='permissions:permission_multiple_grant') link_permission_revoke = Link(permissions=[PERMISSION_PERMISSION_REVOKE], text=_('Revoke'), view='permissions:permission_multiple_revoke') -link_role_create = {'text': _('Create new role'), 'view': 'permissions:role_create', 'famfam': 'medal_gold_add', 'permissions': [PERMISSION_ROLE_CREATE]} -link_role_delete = {'text': _('Delete'), 'view': 'permissions:role_delete', 'args': 'object.id', 'famfam': 'medal_gold_delete', 'permissions': [PERMISSION_ROLE_DELETE]} -link_role_edit = {'text': _('Edit'), 'view': 'permissions:role_edit', 'args': 'object.id', 'famfam': 'medal_gold_1', 'permissions': [PERMISSION_ROLE_EDIT]} +link_role_create = Link(permissions=[PERMISSION_ROLE_CREATE], text=_('Create new role'), view='permissions:role_create') +link_role_delete = Link(permissions=[PERMISSION_ROLE_DELETE], text=_('Delete'), view='permissions:role_delete', args='object.id') +link_role_edit = Link(permissions=[PERMISSION_ROLE_EDIT], text=_('Edit'), view='permissions:role_edit', args='object.id') link_role_list = Link(icon='fa fa-child', permissions=[PERMISSION_ROLE_VIEW], text=_('Roles'), view='permissions:role_list') -link_role_members = {'text': _('Members'), 'view': 'permissions:role_members', 'args': 'object.id', 'famfam': 'group_key', 'permissions': [PERMISSION_ROLE_EDIT]} -link_role_permissions = {'text': _('Role permissions'), 'view': 'permissions:role_permissions', 'args': 'object.id', 'famfam': 'key_go', 'permissions': [PERMISSION_PERMISSION_GRANT, PERMISSION_PERMISSION_REVOKE]} +link_role_members = Link(permissions=[PERMISSION_ROLE_EDIT], text=_('Members'), view='permissions:role_members', args='object.id') +link_role_permissions = Link(permissions=[PERMISSION_PERMISSION_GRANT, PERMISSION_PERMISSION_REVOKE], text=_('Role permissions'), view='permissions:role_permissions', args='object.id') diff --git a/mayan/apps/sources/apps.py b/mayan/apps/sources/apps.py index d778b30357..39c5812653 100644 --- a/mayan/apps/sources/apps.py +++ b/mayan/apps/sources/apps.py @@ -12,13 +12,16 @@ from rest_api.classes import APIEndPoint from .classes import StagingFile from .links import ( - link_document_create_multiple, document_create_siblings, link_setup_sources, - setup_source_create_imap_email, setup_source_create_pop3_email, - setup_source_create_watch_folder, setup_source_create_webform, - setup_source_create_staging_folder, setup_source_delete, setup_source_edit, - setup_source_transformation_create, setup_source_transformation_delete, - setup_source_transformation_edit, setup_source_transformation_list, - staging_file_delete, upload_version + link_document_create_multiple, link_document_create_siblings, + link_setup_sources, link_setup_source_create_imap_email, + link_setup_source_create_pop3_email, + link_setup_source_create_watch_folder, link_setup_source_create_webform, + link_setup_source_create_staging_folder, link_setup_source_delete, + link_setup_source_edit, link_setup_source_transformation_create, + link_setup_source_transformation_delete, + link_setup_source_transformation_edit, + link_setup_source_transformation_list, link_staging_file_delete, + link_upload_version ) from .models import Source, SourceTransformation from .widgets import staging_file_thumbnail diff --git a/mayan/apps/sources/links.py b/mayan/apps/sources/links.py index 222b035434..4c97e423cc 100644 --- a/mayan/apps/sources/links.py +++ b/mayan/apps/sources/links.py @@ -17,24 +17,19 @@ from .permissions import ( ) link_document_create_multiple = Link(icon='fa fa-upload', permissions=[PERMISSION_DOCUMENT_CREATE], text=_('New document'), view='sources:document_create_multiple') -document_create_siblings = {'text': _('Clone'), 'view': 'sources:document_create_siblings', 'args': 'object.id', 'famfam': 'page_copy', 'permissions': [PERMISSION_DOCUMENT_CREATE]} - -staging_file_delete = {'text': _('Delete'), 'view': 'sources:staging_file_delete', 'args': ['source.pk', 'object.encoded_filename'], 'famfam': 'delete', 'keep_query': True, 'permissions': [PERMISSION_DOCUMENT_NEW_VERSION, PERMISSION_DOCUMENT_CREATE]} - +link_document_create_siblings = Link(permissions=[PERMISSION_DOCUMENT_CREATE], text=_('Clone'), view='sources:document_create_siblings', args='object.id') link_setup_sources = Link(icon='fa fa-upload', permissions=[PERMISSION_SOURCES_SETUP_VIEW], text=_('Sources'), view='sources:setup_source_list') -setup_source_create_webform = {'text': _('Add new webform source'), 'view': 'sources:setup_source_create', 'args': '"%s"' % SOURCE_CHOICE_WEB_FORM, 'famfam': 'application_form_add', 'permissions': [PERMISSION_SOURCES_SETUP_CREATE], 'conditional_highlight': lambda context: context.get('source_type') == SOURCE_CHOICE_WEB_FORM and 'source' not in context} -setup_source_create_staging_folder = {'text': _('Add new staging folder'), 'view': 'sources:setup_source_create', 'args': '"%s"' % SOURCE_CHOICE_STAGING, 'famfam': 'folder_camera', 'permissions': [PERMISSION_SOURCES_SETUP_CREATE], 'conditional_highlight': lambda context: context.get('source_type') == SOURCE_CHOICE_STAGING and 'source' not in context} -setup_source_create_watch_folder = {'text': _('Add new watch folder'), 'view': 'sources:setup_source_create', 'args': '"%s"' % SOURCE_CHOICE_WATCH, 'famfam': 'folder_magnify', 'permissions': [PERMISSION_SOURCES_SETUP_CREATE], 'conditional_highlight': lambda context: context.get('source_type') == SOURCE_CHOICE_WATCH and 'source' not in context} -setup_source_create_pop3_email = {'text': _('Add new POP3 email'), 'view': 'sources:setup_source_create', 'args': '"%s"' % SOURCE_CHOICE_EMAIL_POP3, 'famfam': 'email', 'permissions': [PERMISSION_SOURCES_SETUP_CREATE], 'conditional_highlight': lambda context: context.get('source_type') == SOURCE_CHOICE_EMAIL_POP3 and 'source' not in context} -setup_source_create_imap_email = {'text': _('Add new IMAP email'), 'view': 'sources:setup_source_create', 'args': '"%s"' % SOURCE_CHOICE_EMAIL_IMAP, 'famfam': 'email', 'permissions': [PERMISSION_SOURCES_SETUP_CREATE], 'conditional_highlight': lambda context: context.get('source_type') == SOURCE_CHOICE_EMAIL_IMAP and 'source' not in context} -setup_source_delete = {'text': _('Delete'), 'view': 'sources:setup_source_delete', 'args': ['source.pk'], 'famfam': 'application_form_delete', 'permissions': [PERMISSION_SOURCES_SETUP_DELETE]} -setup_source_edit = {'text': _('Edit'), 'view': 'sources:setup_source_edit', 'args': ['source.pk'], 'famfam': 'application_form_edit', 'permissions': [PERMISSION_SOURCES_SETUP_EDIT]} - -setup_source_transformation_list = {'text': _('Transformations'), 'view': 'sources:setup_source_transformation_list', 'args': ['source.pk'], 'famfam': 'shape_move_front', 'permissions': [PERMISSION_SOURCES_SETUP_EDIT]} -setup_source_transformation_create = {'text': _('Add transformation'), 'view': 'sources:setup_source_transformation_create', 'args': ['source.pk'], 'famfam': 'shape_square_add', 'permissions': [PERMISSION_SOURCES_SETUP_EDIT]} -setup_source_transformation_edit = {'text': _('Edit'), 'view': 'sources:setup_source_transformation_edit', 'args': 'transformation.pk', 'famfam': 'shape_square_edit', 'permissions': [PERMISSION_SOURCES_SETUP_EDIT]} -setup_source_transformation_delete = {'text': _('Delete'), 'view': 'sources:setup_source_transformation_delete', 'args': 'transformation.pk', 'famfam': 'shape_square_delete', 'permissions': [PERMISSION_SOURCES_SETUP_EDIT]} - -source_list = {'text': _('Document sources'), 'view': 'sources:setup_web_form_list', 'famfam': 'page_add', 'permissions': [PERMISSION_SOURCES_SETUP_VIEW]} - -upload_version = {'text': _('Upload new version'), 'view': 'sources:upload_version', 'args': 'object.pk', 'famfam': 'page_add', 'permissions': [PERMISSION_DOCUMENT_NEW_VERSION]} +link_setup_source_create_imap_email = Link(conditional_highlight=lambda context: context.get('source_type') == SOURCE_CHOICE_EMAIL_IMAP and 'source' not in context, permissions=[PERMISSION_SOURCES_SETUP_CREATE], text=_('Add new IMAP email'), view='sources:setup_source_create', args='"%s"' % SOURCE_CHOICE_EMAIL_IMAP) +link_setup_source_create_pop3_email = Link(conditional_highlight=lambda context: context.get('source_type') == SOURCE_CHOICE_EMAIL_POP3 and 'source' not in context, permissions=[PERMISSION_SOURCES_SETUP_CREATE], text=_('Add new POP3 email'), view='sources:setup_source_create', args='"%s"' % SOURCE_CHOICE_EMAIL_POP3) +link_setup_source_create_staging_folder = Link(conditional_highlight=lambda context: context.get('source_type') == SOURCE_CHOICE_STAGING and 'source' not in context, permissions=[PERMISSION_SOURCES_SETUP_CREATE], text=_('Add new staging folder'), view='sources:setup_source_create', args='"%s"' % SOURCE_CHOICE_STAGING) +link_setup_source_create_watch_folder = Link(conditional_highlight=lambda context: context.get('source_type') == SOURCE_CHOICE_WATCH and 'source' not in context, permissions=[PERMISSION_SOURCES_SETUP_CREATE], text=_('Add new watch folder'), view='sources:setup_source_create', args='"%s"' % SOURCE_CHOICE_WATCH) +link_setup_source_create_webform = Link(conditional_highlight=lambda context: context.get('source_type') == SOURCE_CHOICE_WEB_FORM and 'source' not in context, permissions=[PERMISSION_SOURCES_SETUP_CREATE], text=_('Add new webform source'), view='sources:setup_source_create', args='"%s"' % SOURCE_CHOICE_WEB_FORM) +link_setup_source_delete = Link(permissions=[PERMISSION_SOURCES_SETUP_DELETE], text=_('Delete'), view='sources:setup_source_delete', args=['source.pk']) +link_setup_source_edit = Link(text=_('Edit'), view='sources:setup_source_edit', args=['source.pk'], permissions=[PERMISSION_SOURCES_SETUP_EDIT]) +link_setup_source_transformation_create = Link(permissions=[PERMISSION_SOURCES_SETUP_EDIT], text=_('Add transformation'), view='sources:setup_source_transformation_create', args=['source.pk']) +link_setup_source_transformation_edit = Link(permissions=[PERMISSION_SOURCES_SETUP_EDIT], text=_('Edit'), view='sources:setup_source_transformation_edit', args='transformation.pk') +link_setup_source_transformation_delete = Link(permissions=[PERMISSION_SOURCES_SETUP_EDIT], text=_('Delete'), view='sources:setup_source_transformation_delete', args='transformation.pk') +link_setup_source_transformation_list = Link(permissions=[PERMISSION_SOURCES_SETUP_EDIT], text=_('Transformations'), view='sources:setup_source_transformation_list', args=['source.pk']) +link_source_list = Link(permissions=[PERMISSION_SOURCES_SETUP_VIEW], text=_('Document sources'), view='sources:setup_web_form_list') +link_staging_file_delete = Link(keep_query=True, permissions=[PERMISSION_DOCUMENT_NEW_VERSION, PERMISSION_DOCUMENT_CREATE], text=_('Delete'), view='sources:staging_file_delete', args=['source.pk', 'object.encoded_filename']) +link_upload_version = Link(permissions=[PERMISSION_DOCUMENT_NEW_VERSION], text=_('Upload new version'), view='sources:upload_version', args='object.pk') diff --git a/mayan/apps/statistics/links.py b/mayan/apps/statistics/links.py index 9f35919203..bdcc30cc71 100644 --- a/mayan/apps/statistics/links.py +++ b/mayan/apps/statistics/links.py @@ -9,7 +9,7 @@ def is_superuser(context): return context['request'].user.is_staff or context['request'].user.is_superuser -link_execute = {'text': _('Execute'), 'view': 'statistics:execute', 'args': 'object.id', 'famfam': 'lightning', 'condition': is_superuser} -link_namespace_details = {'text': _('Details'), 'view': 'statistics:namespace_details', 'args': 'namespace.id', 'famfam': 'chart_curve_go', 'condition': is_superuser} -link_namespace_list = {'text': _('Namespace list'), 'view': 'statistics:namespace_list', 'famfam': 'chart_curve', 'condition': is_superuser} +link_execute = Link(condition=is_superuser, text=_('Execute'), view='statistics:execute', args='object.id') +link_namespace_details = Link(text=_('Details'), view='statistics:namespace_details', args='namespace.id', condition=is_superuser) +link_namespace_list = Link(condition=is_superuser, text=_('Namespace list'), view='statistics:namespace_list') link_statistics = Link(condition=is_superuser, icon='fa fa-sort-numeric-desc', text=_('Statistics'), view='statistics:namespace_list') diff --git a/mayan/apps/tags/links.py b/mayan/apps/tags/links.py index 502e7040ce..c585b74f08 100644 --- a/mayan/apps/tags/links.py +++ b/mayan/apps/tags/links.py @@ -10,19 +10,16 @@ from .permissions import ( PERMISSION_TAG_EDIT, PERMISSION_TAG_REMOVE ) -link_tag_list = Link(icon='fa fa-tag', text=_('Tags'), view='tags:tag_list') - -link_tag_create = Link(permissions=[PERMISSION_TAG_CREATE], text=_('Create new tag'), view='tags:tag_create') - -link_tag_attach = Link(permissions=[PERMISSION_TAG_ATTACH], text=_('Attach tag'), view='tags:tag_attach', args='object.pk') -link_tag_multiple_attach = Link(text=_('Attach tag'), view='tags:tag_multiple_attach') link_multiple_documents_selection_tag_remove = Link(text=_('Remove tag'), view='tags:multiple_documents_selection_tag_remove') link_single_document_multiple_tag_remove = Link(permissions=[PERMISSION_TAG_REMOVE], text=_('Remove tags'), view='tags:single_document_multiple_tag_remove', args='document.id') - -link_tag_document_list = Link(permissions=[PERMISSION_TAG_REMOVE, PERMISSION_TAG_ATTACH], text=_('Tags'), view='tags:document_tags', args='object.pk') +link_tag_acl_list = Link(permissions=[ACLS_VIEW_ACL], text=_('ACLs'), view='tags:tag_acl_list', args='object.pk') +link_tag_attach = Link(permissions=[PERMISSION_TAG_ATTACH], text=_('Attach tag'), view='tags:tag_attach', args='object.pk') +link_tag_create = Link(permissions=[PERMISSION_TAG_CREATE], text=_('Create new tag'), view='tags:tag_create') link_tag_delete = Link(permissions=[PERMISSION_TAG_DELETE], text=_('Delete'), view='tags:tag_delete', args='object.id') link_tag_edit = Link(permissions=[PERMISSION_TAG_EDIT], text=_('Edit'), view='tags:tag_edit', args='object.id') -link_tag_tagged_item_list = Link(text=('Documents'), view='tags:tag_tagged_item_list', args='object.id') +link_tag_document_list = Link(permissions=[PERMISSION_TAG_REMOVE, PERMISSION_TAG_ATTACH], text=_('Tags'), view='tags:document_tags', args='object.pk') +link_tag_list = Link(icon='fa fa-tag', text=_('Tags'), view='tags:tag_list') +link_tag_multiple_attach = Link(text=_('Attach tag'), view='tags:tag_multiple_attach') link_tag_multiple_delete = Link(permissions=[PERMISSION_TAG_DELETE], text=_('Delete'), view='tags:tag_multiple_delete') -link_tag_acl_list = Link(permissions=[ACLS_VIEW_ACL], text=_('ACLs'), view='tags:tag_acl_list', args='object.pk') +link_tag_tagged_item_list = Link(text=('Documents'), view='tags:tag_tagged_item_list', args='object.id') diff --git a/mayan/apps/user_management/apps.py b/mayan/apps/user_management/apps.py index 9168ba956d..76da6ef4f3 100644 --- a/mayan/apps/user_management/apps.py +++ b/mayan/apps/user_management/apps.py @@ -10,10 +10,11 @@ from common import menu_setup from rest_api.classes import APIEndPoint from .links import ( - group_add, group_delete, group_edit, group_list, group_members, - group_multiple_delete, link_group_setup, user_add, user_delete, user_edit, - user_groups, user_list, user_multiple_delete, user_multiple_set_password, - user_set_password, link_user_setup + link_group_add, link_group_delete, link_group_edit, link_group_list, + link_group_members, link_group_multiple_delete, link_group_setup, + link_user_add, link_user_delete, link_user_edit, link_user_groups, + link_user_list, link_user_multiple_delete, + link_user_multiple_set_password, link_user_set_password, link_user_setup ) diff --git a/mayan/apps/user_management/links.py b/mayan/apps/user_management/links.py index 52cefa4b57..d45a8cea23 100644 --- a/mayan/apps/user_management/links.py +++ b/mayan/apps/user_management/links.py @@ -10,20 +10,19 @@ from .permissions import ( PERMISSION_USER_EDIT, PERMISSION_USER_VIEW ) -user_list = {'text': _('Users'), 'view': 'user_management:user_list', 'famfam': 'user', 'permissions': [PERMISSION_USER_VIEW]} -link_user_setup = Link(icon='fa fa-user', permissions=[PERMISSION_USER_VIEW], text=_('Users'), view='user_management:user_list') -user_edit = {'text': _('Edit'), 'view': 'user_management:user_edit', 'args': 'object.id', 'famfam': 'user_edit', 'permissions': [PERMISSION_USER_EDIT]} -user_add = {'text': _('Create new user'), 'view': 'user_management:user_add', 'famfam': 'user_add', 'permissions': [PERMISSION_USER_CREATE]} -user_delete = {'text': _('Delete'), 'view': 'user_management:user_delete', 'args': 'object.id', 'famfam': 'user_delete', 'permissions': [PERMISSION_USER_DELETE]} -user_multiple_delete = {'text': _('Delete'), 'view': 'user_management:user_multiple_delete', 'famfam': 'user_delete', 'permissions': [PERMISSION_USER_DELETE]} -user_set_password = {'text': _('Reset password'), 'view': 'user_management:user_set_password', 'args': 'object.id', 'famfam': 'lock_edit', 'permissions': [PERMISSION_USER_EDIT]} -user_multiple_set_password = {'text': _('Reset password'), 'view': 'user_management:user_multiple_set_password', 'famfam': 'lock_edit', 'permissions': [PERMISSION_USER_EDIT]} -user_groups = {'text': _('Groups'), 'view': 'user_management:user_groups', 'args': 'object.id', 'famfam': 'group_link', 'permissions': [PERMISSION_USER_EDIT]} - -group_list = {'text': _('Groups'), 'view': 'user_management:group_list', 'famfam': 'group', 'permissions': [PERMISSION_GROUP_VIEW]} +link_group_add = Link(permissions=[PERMISSION_GROUP_CREATE], text=_('Create new group'), view='user_management:group_add') +link_group_delete = Link(permissions=[PERMISSION_GROUP_DELETE], text=_('Delete'), view='user_management:group_delete', args='object.id') +link_group_edit = Link(permissions=[PERMISSION_GROUP_EDIT], text=_('Edit'), view='user_management:group_edit', args='object.id') +link_group_list = Link(permissions=[PERMISSION_GROUP_VIEW], text=_('Groups'), view='user_management:group_list') +link_group_members = Link(permissions=[PERMISSION_GROUP_EDIT], text=_('Members'), view='user_management:group_members', args='object.id') +link_group_multiple_delete = Link(permissions=[PERMISSION_GROUP_DELETE], text=_('Delete'), view='user_management:group_multiple_delete') link_group_setup = Link(icon='fa fa-group', permissions=[PERMISSION_GROUP_VIEW], text=_('Groups'), view='user_management:group_list') -group_edit = {'text': _('Edit'), 'view': 'user_management:group_edit', 'args': 'object.id', 'famfam': 'group_edit', 'permissions': [PERMISSION_GROUP_EDIT]} -group_add = {'text': _('Create new group'), 'view': 'user_management:group_add', 'famfam': 'group_add', 'permissions': [PERMISSION_GROUP_CREATE]} -group_delete = {'text': _('Delete'), 'view': 'user_management:group_delete', 'args': 'object.id', 'famfam': 'group_delete', 'permissions': [PERMISSION_GROUP_DELETE]} -group_multiple_delete = {'text': _('Delete'), 'view': 'user_management:group_multiple_delete', 'famfam': 'group_delete', 'permissions': [PERMISSION_GROUP_DELETE]} -group_members = {'text': _('Members'), 'view': 'user_management:group_members', 'args': 'object.id', 'famfam': 'group_link', 'permissions': [PERMISSION_GROUP_EDIT]} +link_user_add = Link(permissions=[PERMISSION_USER_CREATE], text=_('Create new user'), view='user_management:user_add') +link_user_delete = Link(permissions=[PERMISSION_USER_DELETE], text=_('Delete'), view='user_management:user_delete', args='object.id') +link_user_edit = Link(permissions=[PERMISSION_USER_EDIT], text=_('Edit'), view='user_management:user_edit', args='object.id') +link_user_groups = Link(permissions=[PERMISSION_USER_EDIT], text=_('Groups'), view='user_management:user_groups', args='object.id') +link_user_list = Link(permissions=[PERMISSION_USER_VIEW], text=_('Users'), view='user_management:user_list') +link_user_multiple_delete = Link(permissions=[PERMISSION_USER_DELETE], text=_('Delete'), view='user_management:user_multiple_delete') +link_user_multiple_set_password = Link(permissions=[PERMISSION_USER_EDIT], text=_('Reset password'), view='user_management:user_multiple_set_password') +link_user_set_password = Link(permissions=[PERMISSION_USER_EDIT], text=_('Reset password'), view='user_management:user_set_password', args='object.id') +link_user_setup = Link(icon='fa fa-user', permissions=[PERMISSION_USER_VIEW], text=_('Users'), view='user_management:user_list')