lingo: display an error message if invoice retrieval failed (#11033)
This commit is contained in:
parent
eba3934c2a
commit
a438043603
|
@ -21,6 +21,7 @@ import logging
|
|||
import requests
|
||||
|
||||
from django.contrib.auth.models import User
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponse, HttpResponseRedirect, HttpResponseBadRequest
|
||||
from django.http import HttpResponseForbidden, Http404
|
||||
|
@ -306,7 +307,18 @@ class ItemDownloadView(View):
|
|||
|
||||
def get(self, request, *args, **kwargs):
|
||||
regie = Regie.objects.get(pk=kwargs['regie_id'])
|
||||
data = regie.download_item(request, kwargs['item_id'])
|
||||
try:
|
||||
data = regie.download_item(request, kwargs['item_id'])
|
||||
except PermissionDenied:
|
||||
return HttpResponseForbidden()
|
||||
|
||||
if data.status_code != 200:
|
||||
logging.error('failed to retrieve invoice (%r)', data.status_code)
|
||||
messages.error(request, _('We are sorry but an error occured when retrieving the invoice.'))
|
||||
if self.request.META.get('HTTP_REFERER'):
|
||||
return HttpResponseRedirect(self.request.META.get('HTTP_REFERER'))
|
||||
return HttpResponseRedirect('/')
|
||||
|
||||
r = HttpResponse(data, content_type='application/pdf')
|
||||
r['Content-Disposition'] = 'attachment; filename="%(item_id)s.pdf"' % kwargs
|
||||
return r
|
||||
|
|
Loading…
Reference in New Issue