Handle export upload errors gracefully. Fixes issue #53

This commit is contained in:
Oliver Falk
2019-03-08 12:45:53 +01:00
parent bb5358a267
commit fc284ade27

View File

@@ -816,12 +816,16 @@ class UploadLibravatarExportView(SuccessMessageMixin, FormView):
def form_valid(self, form): def form_valid(self, form):
data = self.request.FILES['export_file'] data = self.request.FILES['export_file']
try:
items = libravatar_read_gzdata(data.read()) items = libravatar_read_gzdata(data.read())
# DEBUG print(items) # DEBUG print(items)
return render(self.request, 'choose_libravatar_export.html', { return render(self.request, 'choose_libravatar_export.html', {
'emails': items['emails'], 'emails': items['emails'],
'photos': items['photos'], 'photos': items['photos'],
}) })
except Exception as e:
messages.error(self.request, _('Unable to parse file: %s' % e))
return HttpResponseRedirect(reverse_lazy('upload_export'))
@method_decorator(login_required, name='dispatch') @method_decorator(login_required, name='dispatch')