diff --git a/apps/checkouts/__init__.py b/apps/checkouts/__init__.py index f0c247a8e9..23401436f3 100644 --- a/apps/checkouts/__init__.py +++ b/apps/checkouts/__init__.py @@ -2,8 +2,9 @@ from __future__ import absolute_import from django.utils.translation import ugettext_lazy as _ -from navigation.api import (register_links, register_top_menu, - register_multi_item_links, register_sidebar_template) +from navigation.api import (bind_links, register_top_menu, + register_model_list_columns, + register_sidebar_template, Link) from scheduler.api import register_interval_job from documents.models import Document @@ -29,8 +30,8 @@ def initialize_document_checkout_extra_methods(): Document.add_to_class('is_new_versions_allowed', lambda document, user=None: DocumentCheckout.objects.is_document_new_versions_allowed(document, user)) register_top_menu(name='checkouts', link=checkout_list) -register_links(Document, [checkout_info], menu_name='form_header') -register_links(['checkout_info', 'checkout_document', 'checkin_document'], [checkout_document, checkin_document], menu_name="sidebar") +bind_links([Document], [checkout_info], menu_name='form_header') +bind_links(['checkout_info', 'checkout_document', 'checkin_document'], [checkout_document, checkin_document], menu_name="sidebar") class_permissions(Document, [ PERMISSION_DOCUMENT_CHECKOUT, diff --git a/apps/checkouts/links.py b/apps/checkouts/links.py index 5583dfe5b3..516bcdb940 100644 --- a/apps/checkouts/links.py +++ b/apps/checkouts/links.py @@ -3,6 +3,7 @@ from __future__ import absolute_import from django.utils.translation import ugettext_lazy as _ from documents.permissions import PERMISSION_DOCUMENT_VIEW +from navigation.api import Link from .permissions import (PERMISSION_DOCUMENT_CHECKOUT, PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE) @@ -15,7 +16,7 @@ def is_not_checked_out(context): return not context['object'].is_checked_out() -checkout_list = {'text': _(u'checkouts'), 'view': 'checkout_list', 'famfam': 'basket'} -checkout_document = {'text': _('check out document'), 'view': 'checkout_document', 'args': 'object.pk', 'famfam': 'basket_put', 'condition': is_not_checked_out, 'permissions': [PERMISSION_DOCUMENT_CHECKOUT]} -checkin_document = {'text': _('check in document'), 'view': 'checkin_document', 'args': 'object.pk', 'famfam': 'basket_remove', 'condition': is_checked_out, 'permissions': [PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE]} -checkout_info = {'text': _('check in/out'), 'view': 'checkout_info', 'args': 'object.pk', 'famfam': 'basket', 'children_views': ['checkout_document', 'checkin_document'], 'permissions': [PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE, PERMISSION_DOCUMENT_CHECKOUT]} +checkout_list = Link(text=_(u'checkouts'), view='checkout_list', sprite='basket') +checkout_document = Link(text=_('check out document'), view='checkout_document', args='object.pk', sprite='basket_put', condition=is_not_checked_out, permissions=[PERMISSION_DOCUMENT_CHECKOUT]) +checkin_document = Link(text=_('check in document'), view='checkin_document', args='object.pk', sprite='basket_remove', condition=is_checked_out, permissions=[PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE]) +checkout_info = Link(text=_('check in/out'), view='checkout_info', args='object.pk', sprite='basket', children_views=['checkout_document', 'checkin_document'], permissions=[PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE, PERMISSION_DOCUMENT_CHECKOUT]) diff --git a/apps/history/__init__.py b/apps/history/__init__.py index 8bcb3b1d98..14b8362344 100644 --- a/apps/history/__init__.py +++ b/apps/history/__init__.py @@ -3,7 +3,9 @@ from __future__ import absolute_import from django.utils.translation import ugettext_lazy as _ from project_tools.api import register_tool -from navigation.api import register_model_list_columns, register_links +from navigation.api import (bind_links, register_top_menu, + register_model_list_columns, + register_sidebar_template, Link) from common.utils import encapsulate from .models import History @@ -27,4 +29,4 @@ register_model_list_columns(History, [ } ]) -register_links(History, [history_details]) +bind_links([History], [history_details]) diff --git a/apps/installation/links.py b/apps/installation/links.py index b1a9445deb..a3d63cdac0 100644 --- a/apps/installation/links.py +++ b/apps/installation/links.py @@ -2,6 +2,8 @@ from __future__ import absolute_import from django.utils.translation import ugettext_lazy as _ +from navigation.api import Link + from .permissions import PERMISSION_INSTALLATION_DETAILS -installation_details = {'text': _(u'installation details'), 'view': 'installation_details', 'icon': 'interface_preferences.png', 'permissions': [PERMISSION_INSTALLATION_DETAILS]} +installation_details = Link(text=_(u'installation details'), view='installation_details', icon='interface_preferences.png', permissions=[PERMISSION_INSTALLATION_DETAILS]) diff --git a/apps/scheduler/links.py b/apps/scheduler/links.py index 7190be22f9..7808f3331c 100644 --- a/apps/scheduler/links.py +++ b/apps/scheduler/links.py @@ -2,6 +2,8 @@ from __future__ import absolute_import from django.utils.translation import ugettext_lazy as _ +from navigation.api import Link + from .permissions import PERMISSION_VIEW_JOB_LIST -job_list = {'text': _(u'interval job list'), 'view': 'job_list', 'icon': 'time.png', 'permissions': [PERMISSION_VIEW_JOB_LIST]} +job_list = Link(text=_(u'interval job list'), view='job_list', icon='time.png', permissions=[PERMISSION_VIEW_JOB_LIST]) diff --git a/apps/scheduler/views.py b/apps/scheduler/views.py index 3b4ef70a9a..9f106d6fef 100644 --- a/apps/scheduler/views.py +++ b/apps/scheduler/views.py @@ -33,6 +33,7 @@ def job_list(request): }, ], 'hide_object': True, + 'hide_links': True, } return render_to_response('generic_list.html', context,