diff --git a/mayan/apps/cabinets/apps.py b/mayan/apps/cabinets/apps.py index ec970affc7..cef65c4776 100644 --- a/mayan/apps/cabinets/apps.py +++ b/mayan/apps/cabinets/apps.py @@ -8,15 +8,15 @@ from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view from mayan.apps.common.apps import MayanAppConfig from mayan.apps.common.menus import ( menu_facet, menu_list_facet, menu_main, menu_multi_item, menu_object, - menu_sidebar + menu_secondary ) from mayan.apps.documents.search import document_page_search, document_search from mayan.apps.navigation import SourceColumn from .links import ( link_cabinet_list, link_document_cabinet_list, - link_document_cabinet_remove, link_cabinet_add_document, - link_cabinet_add_multiple_documents, link_cabinet_child_add, + link_document_cabinet_remove, link_document_cabinet_add, + link_document_multiple_cabinet_add, link_cabinet_child_add, link_cabinet_create, link_cabinet_delete, link_cabinet_edit, link_cabinet_view, link_custom_acl_list, link_multiple_document_cabinet_remove @@ -109,7 +109,7 @@ class CabinetsApp(MayanAppConfig): menu_multi_item.bind_links( links=( - link_cabinet_add_multiple_documents, + link_document_multiple_cabinet_add, link_multiple_document_cabinet_remove ), sources=(Document,) ) @@ -123,11 +123,11 @@ class CabinetsApp(MayanAppConfig): link_cabinet_delete, link_cabinet_edit, link_cabinet_child_add ), sources=(Cabinet,) ) - menu_sidebar.bind_links( - links=(link_cabinet_add_document, link_document_cabinet_remove), + menu_secondary.bind_links( + links=(link_document_cabinet_add, link_document_cabinet_remove), sources=( 'cabinets:document_cabinet_list', - 'cabinets:cabinet_add_document', + 'cabinets:document_cabinet_add', 'cabinets:document_cabinet_remove' ) ) diff --git a/mayan/apps/cabinets/icons.py b/mayan/apps/cabinets/icons.py index 879186abf0..0776b7200d 100644 --- a/mayan/apps/cabinets/icons.py +++ b/mayan/apps/cabinets/icons.py @@ -6,4 +6,31 @@ icon_cabinet = Icon(driver_name='fontawesome', symbol='columns') icon_cabinet_add = Icon(driver_name='fontawesome', symbol='plus') icon_cabinet_child_add = Icon(driver_name='fontawesome', symbol='plus') icon_cabinet_create = Icon(driver_name='fontawesome', symbol='plus') + +icon_cabinet_create = Icon( + driver_name='fontawesome-dual', primary_symbol='columns', + secondary_symbol='plus' +) + +icon_cabinet_delete = Icon(driver_name='fontawesome', symbol='times') +icon_cabinet_edit = Icon(driver_name='fontawesome', symbol='pencil-alt') icon_cabinet_list = Icon(driver_name='fontawesome', symbol='columns') +icon_cabinet_view = Icon(driver_name='fontawesome', symbol='columns') + +icon_document_cabinet_add = Icon( + driver_name='fontawesome-dual', primary_symbol='columns', + secondary_symbol='arrow-right' +) +icon_document_cabinet_list = icon_cabinet_list +icon_document_cabinet_remove = Icon( + driver_name='fontawesome-dual', primary_symbol='columns', + secondary_symbol='minus' +) +icon_document_multiple_cabinet_add = Icon( + driver_name='fontawesome-dual', primary_symbol='columns', + secondary_symbol='arrow-right' +) +icon_document_multiple_cabinet_remove = Icon( + driver_name='fontawesome-dual', primary_symbol='columns', + secondary_symbol='minus' +) diff --git a/mayan/apps/cabinets/links.py b/mayan/apps/cabinets/links.py index f1f6c12d1d..34b5e46ff4 100644 --- a/mayan/apps/cabinets/links.py +++ b/mayan/apps/cabinets/links.py @@ -8,10 +8,6 @@ from mayan.apps.acls.links import link_acl_list from mayan.apps.documents.permissions import permission_document_view from mayan.apps.navigation import Link, get_cascade_condition -from .icons import ( - icon_cabinet_add, icon_cabinet_child_add, icon_cabinet_create, - icon_cabinet_list -) from .permissions import ( permission_cabinet_add_document, permission_cabinet_create, permission_cabinet_delete, permission_cabinet_edit, @@ -21,24 +17,29 @@ from .permissions import ( # Document links link_document_cabinet_list = Link( - args='resolved_object.pk', icon_class=icon_cabinet_list, + args='resolved_object.pk', + icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_list', permissions=(permission_document_view,), text=_('Cabinets'), view='cabinets:document_cabinet_list', ) link_document_cabinet_remove = Link( args='resolved_object.pk', + icon_class_path='mayan.apps.cabinets.icons.icon_document_cabinet_remove', permissions=(permission_cabinet_remove_document,), text=_('Remove from cabinets'), view='cabinets:document_cabinet_remove' ) -link_cabinet_add_document = Link( - args='object.pk', icon_class=icon_cabinet_add, +link_document_cabinet_add = Link( + args='object.pk', + icon_class_path='mayan.apps.cabinets.icons.icon_document_cabinet_add', permissions=(permission_cabinet_add_document,), text=_('Add to cabinets'), - view='cabinets:cabinet_add_document', + view='cabinets:document_cabinet_add', ) -link_cabinet_add_multiple_documents = Link( - text=_('Add to cabinets'), view='cabinets:cabinet_add_multiple_documents' +link_document_multiple_cabinet_add = Link( + icon_class_path='mayan.apps.cabinets.icons.icon_document_multiple_cabinet_remove', + text=_('Add to cabinets'), view='cabinets:document_multiple_cabinet_add' ) link_multiple_document_cabinet_remove = Link( + icon_class_path='mayan.apps.cabinets.icons.icon_document_cabinet_remove', text=_('Remove from cabinets'), view='cabinets:multiple_document_cabinet_remove' ) @@ -56,30 +57,37 @@ link_custom_acl_list = copy.copy(link_acl_list) link_custom_acl_list.condition = cabinet_is_root link_cabinet_child_add = Link( - args='object.pk', icon_class=icon_cabinet_child_add, + args='object.pk', + icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_child_add', permissions=(permission_cabinet_create,), text=_('Add new level'), view='cabinets:cabinet_child_add' ) link_cabinet_create = Link( - icon_class=icon_cabinet_create, permissions=(permission_cabinet_create,), + icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_create', + permissions=(permission_cabinet_create,), text=_('Create cabinet'), view='cabinets:cabinet_create' ) link_cabinet_delete = Link( - args='object.pk', permissions=(permission_cabinet_delete,), + args='object.pk', + icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_delete', + permissions=(permission_cabinet_delete,), tags='dangerous', text=_('Delete'), view='cabinets:cabinet_delete' ) link_cabinet_edit = Link( - args='object.pk', permissions=(permission_cabinet_edit,), text=_('Edit'), + args='object.pk', + icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_edit', + permissions=(permission_cabinet_edit,), text=_('Edit'), view='cabinets:cabinet_edit' ) link_cabinet_list = Link( condition=get_cascade_condition( app_label='cabinets', model_name='Cabinet', object_permission=permission_cabinet_view, - ), icon_class=icon_cabinet_list, text=_('All'), - view='cabinets:cabinet_list' + ), icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_list', + text=_('All'), view='cabinets:cabinet_list' ) link_cabinet_view = Link( - args='object.pk', permissions=(permission_cabinet_view,), text=_('Details'), + args='object.pk', icon_class_path='mayan.apps.cabinets.icons.icon_cabinet_view', + permissions=(permission_cabinet_view,), text=_('Details'), view='cabinets:cabinet_view' ) diff --git a/mayan/apps/cabinets/tests/test_views.py b/mayan/apps/cabinets/tests/test_views.py index f9c1c00542..2a32fec145 100644 --- a/mayan/apps/cabinets/tests/test_views.py +++ b/mayan/apps/cabinets/tests/test_views.py @@ -104,7 +104,7 @@ class CabinetViewTestCase(CabinetTestMixin, GenericViewTestCase): class CabinetDocumentViewTestCase(CabinetTestMixin, GenericDocumentViewTestCase): def _add_document_to_cabinet(self): return self.post( - viewname='cabinets:cabinet_add_document', kwargs={ + viewname='cabinets:document_cabinet_add', kwargs={ 'pk': self.test_document.pk }, data={ 'cabinets': self.test_cabinet.pk @@ -146,7 +146,7 @@ class CabinetDocumentViewTestCase(CabinetTestMixin, GenericDocumentViewTestCase) def _request_add_multiple_documents_to_cabinet(self): return self.post( - viewname='cabinets:cabinet_add_multiple_documents', data={ + viewname='cabinets:document_multiple_cabinet_add', data={ 'id_list': (self.test_document.pk,), 'cabinets': self.test_cabinet.pk } ) diff --git a/mayan/apps/cabinets/urls.py b/mayan/apps/cabinets/urls.py index 9afcb64caa..4703ddeab7 100644 --- a/mayan/apps/cabinets/urls.py +++ b/mayan/apps/cabinets/urls.py @@ -38,12 +38,12 @@ urlpatterns = [ ), url( regex=r'^document/(?P\d+)/cabinet/add/$', - view=DocumentAddToCabinetView.as_view(), name='cabinet_add_document' + view=DocumentAddToCabinetView.as_view(), name='document_cabinet_add' ), url( regex=r'^document/multiple/cabinet/add/$', view=DocumentAddToCabinetView.as_view(), - name='cabinet_add_multiple_documents' + name='document_multiple_cabinet_add' ), url( regex=r'^document/(?P\d+)/cabinet/remove/$', diff --git a/mayan/apps/cabinets/views.py b/mayan/apps/cabinets/views.py index d23b5a8230..a66c76c8e5 100644 --- a/mayan/apps/cabinets/views.py +++ b/mayan/apps/cabinets/views.py @@ -20,7 +20,7 @@ from mayan.apps.documents.views import DocumentListView from .forms import CabinetListForm from .icons import icon_cabinet from .links import ( - link_cabinet_add_document, link_cabinet_child_add, link_cabinet_create + link_document_cabinet_add, link_cabinet_child_add, link_cabinet_create ) from .models import Cabinet from .permissions import ( @@ -204,7 +204,7 @@ class DocumentCabinetListView(CabinetListView): return { 'hide_link': True, 'no_results_icon': icon_cabinet, - 'no_results_main_link': link_cabinet_add_document.resolve( + 'no_results_main_link': link_document_cabinet_add.resolve( context=RequestContext( request=self.request, dict_={'object': self.document} )