diff --git a/mayan/apps/tags/apps.py b/mayan/apps/tags/apps.py index 00b3025741..613bea2665 100644 --- a/mayan/apps/tags/apps.py +++ b/mayan/apps/tags/apps.py @@ -11,7 +11,7 @@ from mayan.apps.common.apps import MayanAppConfig from mayan.apps.common.classes import ModelField from mayan.apps.common.menus import ( menu_facet, menu_list_facet, menu_main, menu_multi_item, menu_object, - menu_sidebar + menu_sidebar, menu_secondary ) from mayan.apps.documents.search import document_page_search, document_search from mayan.apps.events import ModelEventType @@ -27,10 +27,11 @@ from .events import ( from .handlers import handler_index_document, handler_tag_pre_delete from .html_widgets import widget_document_tags from .links import ( - link_multiple_documents_attach_tag, link_multiple_documents_tag_remove, - link_single_document_multiple_tag_remove, link_tag_attach, link_tag_create, - link_tag_delete, link_tag_document_list, link_tag_edit, link_tag_list, - link_tag_multiple_delete, link_tag_tagged_item_list + link_document_tag_list, link_document_multiple_attach_multiple_tag, + link_document_multiple_tag_multiple_remove, + link_document_tag_multiple_remove, link_document_tag_multiple_attach, link_tag_create, + link_tag_delete, link_tag_edit, link_tag_list, + link_tag_multiple_delete, link_tag_document_list ) from .menus import menu_tags from .methods import method_document_get_tags @@ -141,14 +142,14 @@ class TagsApp(MayanAppConfig): document_search.add_model_field(field='tags__label', label=_('Tags')) menu_facet.bind_links( - links=(link_tag_document_list,), sources=(Document,) + links=(link_document_tag_list,), sources=(Document,) ) menu_list_facet.bind_links( links=( link_acl_list, link_events_for_object, link_object_event_types_user_subcriptions_list, - link_tag_tagged_item_list, + link_tag_document_list, ), sources=(Tag,) ) @@ -162,8 +163,8 @@ class TagsApp(MayanAppConfig): menu_multi_item.bind_links( links=( - link_multiple_documents_attach_tag, - link_multiple_documents_tag_remove + link_document_multiple_attach_multiple_tag, + link_document_multiple_tag_multiple_remove ), sources=(Document,) ) @@ -176,10 +177,10 @@ class TagsApp(MayanAppConfig): ), sources=(Tag,) ) - menu_sidebar.bind_links( - links=(link_tag_attach, link_single_document_multiple_tag_remove), + menu_secondary.bind_links( + links=(link_document_tag_multiple_attach, link_document_tag_multiple_remove), sources=( - 'tags:tag_attach', 'tags:document_tags', + 'tags:tag_attach', 'tags:document_tag_list', 'tags:single_document_multiple_tag_remove' ) ) diff --git a/mayan/apps/tags/links.py b/mayan/apps/tags/links.py index cf02bb162b..d09af4d293 100644 --- a/mayan/apps/tags/links.py +++ b/mayan/apps/tags/links.py @@ -4,57 +4,70 @@ from django.utils.translation import ugettext_lazy as _ from mayan.apps.navigation import Link, get_cascade_condition -from .icons import ( - icon_tag_attach, icon_tag_create, icon_tag_document_list, icon_tag_list -) from .permissions import ( permission_tag_attach, permission_tag_create, permission_tag_delete, permission_tag_edit, permission_tag_remove, permission_tag_view ) -link_multiple_documents_tag_remove = Link( +link_document_multiple_tag_multiple_remove = Link( + icon_class_path='mayan.apps.tags.icons.icon_document_tag_multiple_remove', text=_('Remove tag'), view='tags:multiple_documents_selection_tag_remove' ) -link_multiple_documents_attach_tag = Link( +link_document_multiple_attach_multiple_tag = Link( + icon_class_path='mayan.apps.tags.icons.icon_document_tag_multiple_attach', text=_('Attach tags'), view='tags:multiple_documents_tag_attach' ) -link_single_document_multiple_tag_remove = Link( - args='object.id', permissions=(permission_tag_remove,), - text=_('Remove tags'), view='tags:single_document_multiple_tag_remove', +link_document_tag_list = Link( + args='resolved_object.pk', + icon_class_path='mayan.apps.tags.icons.icon_document_tag_list', + permissions=(permission_tag_view,), text=_('Tags'), + view='tags:document_tag_list' ) -link_tag_attach = Link( - args='object.pk', icon_class=icon_tag_attach, +link_document_tag_multiple_remove = Link( + args='object.id', + icon_class_path='mayan.apps.tags.icons.icon_document_tag_multiple_remove', + permissions=(permission_tag_remove,), text=_('Remove tags'), + view='tags:single_document_multiple_tag_remove' +) +link_document_tag_multiple_attach = Link( + args='object.pk', + icon_class_path='mayan.apps.tags.icons.icon_document_tag_multiple_attach', permissions=(permission_tag_attach,), text=_('Attach tags'), - view='tags:tag_attach', + view='tags:tag_attach' ) + link_tag_create = Link( - icon_class=icon_tag_create, permissions=(permission_tag_create,), + icon_class_path='mayan.apps.tags.icons.icon_tag_create', + permissions=(permission_tag_create,), text=_('Create new tag'), view='tags:tag_create' ) link_tag_delete = Link( - args='object.id', permissions=(permission_tag_delete,), tags='dangerous', - text=_('Delete'), view='tags:tag_delete', + args='object.id', + icon_class_path='mayan.apps.tags.icons.icon_tag_delete', + permissions=(permission_tag_delete,), tags='dangerous', + text=_('Delete'), view='tags:tag_delete' ) link_tag_edit = Link( - args='object.id', permissions=(permission_tag_edit,), text=_('Edit'), - view='tags:tag_edit', -) -link_tag_document_list = Link( - args='resolved_object.pk', icon_class=icon_tag_document_list, - permissions=(permission_tag_view,), text=_('Tags'), - view='tags:document_tags', + args='object.id', + icon_class_path='mayan.apps.tags.icons.icon_tag_edit', + permissions=(permission_tag_edit,), text=_('Edit'), + view='tags:tag_edit' ) link_tag_list = Link( condition=get_cascade_condition( app_label='tags', model_name='Tag', object_permission=permission_tag_view, - ), icon_class=icon_tag_list, text=_('All'), view='tags:tag_list' + ), icon_class_path='mayan.apps.tags.icons.icon_tag_list', + text=_('All'), view='tags:tag_list' ) link_tag_multiple_delete = Link( + icon_class_path='mayan.apps.tags.icons.icon_tag_delete', permissions=(permission_tag_delete,), text=_('Delete'), view='tags:tag_multiple_delete' ) -link_tag_tagged_item_list = Link( - args='object.id', text=('Documents'), view='tags:tag_tagged_item_list', +link_tag_document_list = Link( + args='object.id', + icon_class_path='mayan.apps.tags.icons.icon_tag_document_list', + text=('Documents'), view='tags:tag_document_list' ) diff --git a/mayan/apps/tags/models.py b/mayan/apps/tags/models.py index 62877f2ef3..41a98b213a 100644 --- a/mayan/apps/tags/models.py +++ b/mayan/apps/tags/models.py @@ -54,7 +54,9 @@ class Tag(models.Model): ) def get_absolute_url(self): - return reverse('tags:tag_tagged_item_list', args=(str(self.pk),)) + return reverse( + viewname='tags:tag_document_list', kwargs={'pk': self.pk} + ) def get_document_count(self, user): """ diff --git a/mayan/apps/tags/urls.py b/mayan/apps/tags/urls.py index c254433884..27604e5837 100644 --- a/mayan/apps/tags/urls.py +++ b/mayan/apps/tags/urls.py @@ -25,7 +25,7 @@ urlpatterns = [ ), url( regex=r'^(?P\d+)/documents/$', view=TagTaggedItemListView.as_view(), - name='tag_tagged_item_list' + name='tag_document_list' ), url( regex=r'^multiple/delete/$', view=TagDeleteActionView.as_view(), @@ -51,7 +51,7 @@ urlpatterns = [ ), url( regex=r'^document/(?P\d+)/tags/$', - view=DocumentTagListView.as_view(), name='document_tags' + view=DocumentTagListView.as_view(), name='document_tag_list' ), ] diff --git a/mayan/apps/tags/views.py b/mayan/apps/tags/views.py index cec182277a..33dfc93130 100644 --- a/mayan/apps/tags/views.py +++ b/mayan/apps/tags/views.py @@ -19,9 +19,9 @@ from mayan.apps.documents.permissions import permission_document_view from .forms import TagMultipleSelectionForm from .icons import ( - icon_menu_tags, icon_tag_delete_submit, icon_tag_remove_submit + icon_menu_tags, icon_tag_delete_submit, icon_document_tag_remove_submit ) -from .links import link_tag_attach, link_tag_create +from .links import link_document_tag_multiple_attach, link_tag_create from .models import Tag from .permissions import ( permission_tag_attach, permission_tag_create, permission_tag_delete, @@ -86,7 +86,7 @@ class TagAttachActionView(MultipleObjectFormActionView): queryset = self.get_queryset() if queryset.count() == 1: return reverse( - viewname='tags:document_tags', kwargs={ + viewname='tags:document_tag_list', kwargs={ 'pk': queryset.first().pk } ) @@ -263,7 +263,7 @@ class DocumentTagListView(TagListView): { 'hide_link': True, 'no_results_title': _('Document has no tags attached'), - 'no_results_main_link': link_tag_attach.resolve( + 'no_results_main_link': link_document_tag_multiple_attach.resolve( context=RequestContext( self.request, {'object': self.document} ) @@ -291,7 +291,7 @@ class TagRemoveActionView(MultipleObjectFormActionView): queryset = self.get_queryset() result = { - 'submit_icon_class': icon_tag_remove_submit, + 'submit_icon_class': icon_document_tag_remove_submit, 'submit_label': _('Remove'), 'title': ungettext( singular='Remove tags to %(count)d document', @@ -334,7 +334,7 @@ class TagRemoveActionView(MultipleObjectFormActionView): queryset = self.get_queryset() if queryset.count() == 1: return reverse( - viewname='tags:document_tags', kwargs={ + viewname='tags:document_tag_llist', kwargs={ 'pk': queryset.first().pk } )