diff --git a/apps/folders/__init__.py b/apps/folders/__init__.py index 881ce8a3ce..0f8cb64a3c 100644 --- a/apps/folders/__init__.py +++ b/apps/folders/__init__.py @@ -29,9 +29,9 @@ register_multi_item_links(['folder_view'], [folder_document_multiple_remove]) register_links(Folder, [folder_view, folder_edit, folder_delete, folder_acl_list]) -register_links(['folder_acl_list'], [folder_new_holder], menu_name='sidebar') +register_links(['folder_acl_list', 'folder_new_holder'], [folder_new_holder], menu_name='sidebar') -register_links(['folder_edit', 'folder_delete', 'folder_list', 'folder_create', 'folder_view', 'folder_document_multiple_remove', 'folder_acl_list', 'folder_new_holder'], [folder_list, folder_create], menu_name='secondary_menu') +register_links([Folder, 'folder_list', 'folder_create'], [folder_list, folder_create], menu_name='secondary_menu') register_top_menu(name='folders', link={'text': _('folders'), 'famfam': 'folder_user', 'view': 'folder_list'}, children_views=['folder_list', 'folder_create', 'folder_edit', 'folder_delete', 'folder_view', 'folder_document_multiple_remove']) diff --git a/apps/folders/views.py b/apps/folders/views.py index 2d0b1ee6aa..6b3cdde802 100644 --- a/apps/folders/views.py +++ b/apps/folders/views.py @@ -1,4 +1,5 @@ from __future__ import absolute_import +import logging from django.utils.translation import ugettext_lazy as _ from django.http import HttpResponseRedirect @@ -24,6 +25,8 @@ from .permissions import (PERMISSION_FOLDER_CREATE, PERMISSION_FOLDER_REMOVE_DOCUMENT, PERMISSION_FOLDER_VIEW, PERMISSION_FOLDER_ADD_DOCUMENT) +logger = logging.getLogger(__name__) + def folder_list(request, queryset=None, extra_context=None): context = { @@ -245,7 +248,7 @@ def folder_document_remove(request, folder_id, document_id=None, document_id_lis try: Permission.objects.check_permissions(request.user, [PERMISSION_FOLDER_REMOVE_DOCUMENT]) except PermissionDenied: - folder_documents = AccessEntry.objects.filter_objects_by_access(PERMISSION_FOLDER_REMOVE_DOCUMENT, request.user, folder_documents) + folder_documents = AccessEntry.objects.filter_objects_by_access(PERMISSION_FOLDER_REMOVE_DOCUMENT, request.user, folder_documents, exception_on_empty=True) previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/'))) next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/'))) @@ -285,25 +288,27 @@ def folder_document_multiple_remove(request, folder_id): def folder_acl_list(request, folder_pk): - folder = get_object_or_404(Folder, pk=folder_pk) - return acl_list_for( - request, - folder, - extra_context={ - 'object': folder, - } - ) + folder = get_object_or_404(Folder, pk=folder_pk) + logger.debug('folder: %s' % folder) + + return acl_list_for( + request, + folder, + extra_context={ + 'object': folder, + } + ) def folder_new_holder(request, folder_pk): - folder = get_object_or_404(Folder, pk=folder_pk) - return acl_new_holder_for( - request, - folder, - extra_context={ - 'folder': folder, + folder = get_object_or_404(Folder, pk=folder_pk) + return acl_new_holder_for( + request, + folder, + extra_context={ + 'folder': folder, 'submit_label': _(u'Select'), 'submit_icon_famfam': 'tick', 'object': folder, - } - ) + } + )