From bce05d7d831947f6a10d561f23d8c74bcdfc1b99 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Fri, 15 Apr 2011 00:04:31 -0400 Subject: [PATCH] Added confirmation dialog to document's find missing document file diagnostic --- apps/documents/views.py | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/apps/documents/views.py b/apps/documents/views.py index b616ec2d5d..5c00ef09ec 100644 --- a/apps/documents/views.py +++ b/apps/documents/views.py @@ -877,15 +877,23 @@ def document_view_simple(request, document_id): def document_missing_list(request): check_permissions(request.user, 'documents', [PERMISSION_DOCUMENT_VIEW]) - missing_id_list = [] - for document in Document.objects.only('id',): - if not STORAGE_BACKEND().exists(document.file): - missing_id_list.append(document.pk) + previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', None))) - return render_to_response('generic_list.html', { - 'object_list': Document.objects.in_bulk(missing_id_list).values(), - 'title': _(u'missing documents'), - }, context_instance=RequestContext(request)) + if request.method != 'POST': + return render_to_response('generic_confirm.html', { + 'previous': previous, + 'message': _(u'On large databases this operation may take some time to execute.'), + }, context_instance=RequestContext(request)) + else: + missing_id_list = [] + for document in Document.objects.only('id',): + if not STORAGE_BACKEND().exists(document.file): + missing_id_list.append(document.pk) + + return render_to_response('generic_list.html', { + 'object_list': Document.objects.in_bulk(missing_id_list).values(), + 'title': _(u'missing documents'), + }, context_instance=RequestContext(request)) def document_page_view(request, document_page_id):