diff --git a/mayan/apps/checkouts/__init__.py b/mayan/apps/checkouts/__init__.py index 67538b8b0e..1dc3236c94 100644 --- a/mayan/apps/checkouts/__init__.py +++ b/mayan/apps/checkouts/__init__.py @@ -53,5 +53,5 @@ register_history_type(HISTORY_DOCUMENT_AUTO_CHECKED_IN) register_history_type(HISTORY_DOCUMENT_FORCEFUL_CHECK_IN) register_links(Document, [checkout_info], menu_name='form_header') -register_links(['checkout_info', 'checkout_document', 'checkin_document'], [checkout_document, checkin_document], menu_name="sidebar") +register_links(['checkouts:checkout_info', 'checkouts:checkout_document', 'checkouts:checkin_document'], [checkout_document, checkin_document], menu_name="sidebar") register_top_menu(name='checkouts', link=checkout_list) diff --git a/mayan/apps/checkouts/links.py b/mayan/apps/checkouts/links.py index d26ce57578..da6d47f492 100644 --- a/mayan/apps/checkouts/links.py +++ b/mayan/apps/checkouts/links.py @@ -13,7 +13,7 @@ def is_not_checked_out(context): return not context['object'].is_checked_out() -checkout_list = {'text': _(u'Checkouts'), 'view': 'checkout:checkout_list', 'famfam': 'basket'} -checkout_document = {'text': _('Check out document'), 'view': 'checkout:checkout_document', 'args': 'object.pk', 'famfam': 'basket_put', 'condition': is_not_checked_out, 'permissions': [PERMISSION_DOCUMENT_CHECKOUT]} -checkin_document = {'text': _('Check in document'), 'view': 'checkout: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: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 = {'text': _(u'Checkouts'), 'view': 'checkouts:checkout_list', 'famfam': 'basket'} +checkout_document = {'text': _('Check out document'), 'view': 'checkouts:checkout_document', 'args': 'object.pk', 'famfam': 'basket_put', 'condition': is_not_checked_out, 'permissions': [PERMISSION_DOCUMENT_CHECKOUT]} +checkin_document = {'text': _('Check in document'), 'view': 'checkouts: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': 'checkouts:checkout_info', 'args': 'object.pk', 'famfam': 'basket', 'children_views': ['checkout_document', 'checkin_document'], 'permissions': [PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE, PERMISSION_DOCUMENT_CHECKOUT]} diff --git a/mayan/apps/checkouts/views.py b/mayan/apps/checkouts/views.py index 8a7359ea4f..748e823c62 100644 --- a/mayan/apps/checkouts/views.py +++ b/mayan/apps/checkouts/views.py @@ -18,11 +18,11 @@ from permissions.models import Permission from .exceptions import DocumentAlreadyCheckedOut, DocumentNotCheckedOut from .forms import DocumentCheckoutForm +from .literals import STATE_LABELS from .models import DocumentCheckout from .permissions import (PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE, PERMISSION_DOCUMENT_CHECKOUT) -from .widgets import checkout_widget def checkout_list(request): @@ -47,7 +47,7 @@ def checkout_info(request, document_pk): except PermissionDenied: AccessEntry.objects.check_accesses([PERMISSION_DOCUMENT_CHECKOUT, PERMISSION_DOCUMENT_CHECKIN], request.user, document) - paragraphs = [checkout_widget(document)] + paragraphs = [_(u'Document status: %s') % STATE_LABELS[document.checkout_state()]] if document.is_checked_out(): checkout_info = document.checkout_info() @@ -82,10 +82,10 @@ def checkout_document(request, document_pk): messages.error(request, _(u'Error trying to check out document; %s') % exception) else: messages.success(request, _(u'Document "%s" checked out successfully.') % document) - return HttpResponseRedirect(reverse('checkout_info', args=[document.pk])) + return HttpResponseRedirect(reverse('checkouts:checkout_info', args=[document.pk])) except DocumentAlreadyCheckedOut: messages.error(request, _(u'Document already checked out.')) - return HttpResponseRedirect(reverse('checkout_info', args=[document.pk])) + return HttpResponseRedirect(reverse('checkouts:checkout_info', args=[document.pk])) else: form = DocumentCheckoutForm(initial={'document': document}) @@ -98,7 +98,7 @@ def checkout_document(request, document_pk): def checkin_document(request, document_pk): document = get_object_or_404(Document, pk=document_pk) - post_action_redirect = reverse('checkout_info', args=[document.pk]) + post_action_redirect = reverse('checkouts:checkout_info', args=[document.pk]) # If the user trying to check in the document is the same as the check out # user just check for the normal permission otherwise check for the forceful diff --git a/mayan/apps/checkouts/widgets.py b/mayan/apps/checkouts/widgets.py index 8170920068..d40bf424a2 100644 --- a/mayan/apps/checkouts/widgets.py +++ b/mayan/apps/checkouts/widgets.py @@ -12,16 +12,6 @@ from django.utils.translation import ugettext_lazy as _ from .literals import STATE_ICONS, STATE_LABELS -def checkout_widget(document): - checkout_state = document.checkout_state() - - widget = (u'' % (settings.STATIC_URL, STATE_ICONS[checkout_state])) - return _(u'Document status: %(widget)s %(text)s') % { - 'widget': mark_safe(widget), - 'text': STATE_LABELS[checkout_state] - } - - class SplitDeltaWidget(forms.widgets.MultiWidget): """ A Widget that splits a timedelta input into three boxes. diff --git a/mayan/urls.py b/mayan/urls.py index 7d801f14f0..9f1d43cf83 100644 --- a/mayan/urls.py +++ b/mayan/urls.py @@ -11,7 +11,7 @@ urlpatterns = patterns('', url(r'^admin/', include(admin.site.urls)), url(r'^api/', include('rest_api.urls')), url(r'^bootstrap/', include('bootstrap.urls', namespace='bootstrap')), - url(r'^checkouts/', include('checkouts.urls', namespace='checkout')), + url(r'^checkouts/', include('checkouts.urls', namespace='checkouts')), url(r'^comments/', include('document_comments.urls', namespace='comments')), url(r'^document_acls/', include('document_acls.urls', namespace='document_acls')), url(r'^document_indexing/', include('document_indexing.urls', namespace='indexing')),