Merge document print and document hard copy views

This commit is contained in:
Roberto Rosario
2015-04-06 02:44:01 -04:00
parent 2e9e2fccb0
commit 3524454dbc
2 changed files with 12 additions and 36 deletions

View File

@@ -25,7 +25,6 @@ urlpatterns = patterns('documents.views',
url(r'^multiple/delete/$', 'document_multiple_delete', (), 'document_multiple_delete'),
url(r'^(?P<document_id>\d+)/edit/$', 'document_edit', (), 'document_edit'),
url(r'^(?P<document_id>\d+)/print/$', 'document_print', (), 'document_print'),
url(r'^(?P<document_id>\d+)/hard_copy/$', 'document_hard_copy', (), 'document_hard_copy'),
url(r'^(?P<document_id>\d+)/reset_page_count/$', 'document_update_page_count', (), 'document_update_page_count'),
url(r'^multiple/reset_page_count/$', 'document_multiple_update_page_count', (), 'document_multiple_update_page_count'),

View File

@@ -797,18 +797,22 @@ def document_print(request, document_id):
if request.method == 'POST':
form = PrintForm(request.POST)
if form.is_valid():
hard_copy_arguments = {}
# Get page range
if form.cleaned_data['page_range']:
hard_copy_arguments['page_range'] = form.cleaned_data['page_range']
page_range = form.cleaned_data['page_range']
new_url = [reverse('documents:document_hard_copy', args=[document_id])]
if hard_copy_arguments:
new_url.append(urlquote(hard_copy_arguments))
if page_range:
page_range = parse_range(page_range)
new_window_url = '?'.join(new_url)
pages = document.pages.filter(page_number__in=page_range)
else:
pages = document.pages.all()
return HttpResponseRedirect(new_window_url)
return render_to_response('documents/document_print.html', {
'appearance_type': 'plain',
'object': document,
'page_range': page_range,
'pages': pages,
}, context_instance=RequestContext(request))
else:
form = PrintForm()
@@ -820,33 +824,6 @@ def document_print(request, document_id):
}, context_instance=RequestContext(request))
def document_hard_copy(request, document_id):
# TODO: FIXME
document = get_object_or_404(Document, pk=document_id)
try:
Permission.objects.check_permissions(request.user, [PERMISSION_DOCUMENT_VIEW])
except PermissionDenied:
AccessEntry.objects.check_access(PERMISSION_DOCUMENT_VIEW, request.user, document)
document.add_as_recent_document_for_user(request.user)
page_range = request.GET.get('page_range', '')
if page_range:
page_range = parse_range(page_range)
pages = document.pages.filter(page_number__in=page_range)
else:
pages = document.pages.all()
return render_to_response('documents/document_print.html', {
'appearance_type': 'plain',
'object': document,
'page_range': page_range,
'pages': pages,
}, context_instance=RequestContext(request))
def document_type_list(request):
Permission.objects.check_permissions(request.user, [PERMISSION_DOCUMENT_TYPE_VIEW])