summaryrefslogtreecommitdiff
path: root/ishtar_common/admin.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/admin.py')
-rw-r--r--ishtar_common/admin.py25
1 files changed, 17 insertions, 8 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index f3bdac97f..0b6765399 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -2124,22 +2124,31 @@ duplicate_importertype.short_description = _("Duplicate")
def generate_libreoffice_template(modeladmin, request, queryset):
+ c_url = (
+ reverse(
+ "admin:%s_%s_changelist"
+ % (modeladmin.model._meta.app_label, modeladmin.model._meta.model_name)
+ )
+ + "?"
+ + urllib.parse.urlencode(request.GET)
+ )
if queryset.count() != 1:
messages.add_message(
request, messages.ERROR, str(_("Select only one importer."))
)
- c_url = (
- reverse(
- "admin:%s_%s_changelist"
- % (modeladmin.model._meta.app_label, modeladmin.model._meta.model_name)
- )
- + "?"
- + urllib.parse.urlencode(request.GET)
- )
return HttpResponseRedirect(c_url)
importer_type = queryset.all()[0]
dest_filename = importer_type.get_libreoffice_template()
+ try:
+ dest_filename = importer_type.get_libreoffice_template()
+ except AttributeError:
+ messages.add_message(
+ request, messages.ERROR,
+ str(_("Error on libreoffice daemon. Contact your server administrator."))
+ )
+ return HttpResponseRedirect(c_url)
+
in_memory = BytesIO()
with open(dest_filename, "rb") as fle:
in_memory.write(fle.read())