summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/admin.py8
-rw-r--r--ishtar_common/models_common.py4
-rw-r--r--ishtar_common/models_rest.py9
3 files changed, 17 insertions, 4 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index ee23a221e..578ad9939 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -2399,6 +2399,14 @@ def generate_match_document(modeladmin, request, queryset):
return HttpResponseRedirect(return_url)
src_doc = queryset.all()[0].generate_match_document()
in_memory = BytesIO()
+ if not src_doc:
+ send_error_message(
+ request,
+ str(_("Document not generated: is the LibreOffice daemon configured and running?")),
+ message_type=messages.ERROR,
+ )
+ return HttpResponseRedirect(return_url)
+
with open(src_doc, "rb") as fle:
in_memory.write(fle.read())
filename = src_doc.split(os.sep)[-1]
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py
index 54217ae4f..ebee974ff 100644
--- a/ishtar_common/models_common.py
+++ b/ishtar_common/models_common.py
@@ -2693,9 +2693,11 @@ class GeographicItem(models.Model):
blank=True,
null=True,
related_name="main_related_items_%(app_label)s_%(class)s",
+ verbose_name=_("Main geodata")
)
geodata = models.ManyToManyField(
- GeoVectorData, blank=True, related_name="related_items_%(app_label)s_%(class)s"
+ GeoVectorData, blank=True, related_name="related_items_%(app_label)s_%(class)s",
+ verbose_name=_("Geodata")
)
ALT_NAMES = {
"geodata__name": SearchAltName(
diff --git a/ishtar_common/models_rest.py b/ishtar_common/models_rest.py
index 17db09fc2..e0a0ba97e 100644
--- a/ishtar_common/models_rest.py
+++ b/ishtar_common/models_rest.py
@@ -44,7 +44,7 @@ MAIN_MODELS = dict(
class ApiUser(models.Model):
user_ptr = models.OneToOneField(
- User, primary_key=True, related_name="apiuser", on_delete=models.CASCADE
+ User, primary_key=True, related_name="apiuser", on_delete=models.CASCADE, verbose_name=_("User")
)
ip = models.GenericIPAddressField(verbose_name=_("IP"))
@@ -57,7 +57,7 @@ class ApiUser(models.Model):
class ApiSearchModel(models.Model):
- user = models.ForeignKey(ApiUser, on_delete=models.CASCADE)
+ user = models.ForeignKey(ApiUser, on_delete=models.CASCADE, verbose_name=_("User"))
content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
limit_query = models.TextField(
verbose_name=_("Filter query"),
@@ -88,12 +88,15 @@ class ApiSheetFilter(SheetFilter):
tpl = loader.get_template(f"ishtar/sheet_{model.SLUG}.html")
return tpl.template.origin.name
+ def __str__(self):
+ return f"{self.api_search_model} - {self.key}"
+
class ApiExternalSource(models.Model):
url = models.URLField(verbose_name=_("URL"))
name = models.CharField(verbose_name=_("Name"), max_length=200)
key = models.CharField(_("Key"), max_length=40)
- users = models.ManyToManyField("IshtarUser", blank=True)
+ users = models.ManyToManyField("IshtarUser", blank=True, verbose_name=_("Users"))
match_document = models.FileField(
_("Match document"),
blank=True,