summaryrefslogtreecommitdiff
path: root/ishtar_common/models_common.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-01-27 17:31:00 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2023-01-27 17:31:00 +0100
commitdc1d0da3544d2ec9adb4c792c357fe06eaf752a7 (patch)
treedc2627a86507fe03bf42b21bcc5fe21183573cf4 /ishtar_common/models_common.py
parente448e19f9a472f8bb9ce41b085d175e91e0b873b (diff)
downloadIshtar-dc1d0da3544d2ec9adb4c792c357fe06eaf752a7.tar.bz2
Ishtar-dc1d0da3544d2ec9adb4c792c357fe06eaf752a7.zip
Add custom cached_label configuration for each main item
Diffstat (limited to 'ishtar_common/models_common.py')
-rw-r--r--ishtar_common/models_common.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py
index b239813f3..f50395dee 100644
--- a/ishtar_common/models_common.py
+++ b/ishtar_common/models_common.py
@@ -3982,6 +3982,13 @@ class ImageContainerModel:
class CompleteIdentifierItem(models.Model, ImageContainerModel):
HAS_QR_CODE = True
+ cached_label = models.TextField(
+ _("Cached name"),
+ blank=True,
+ default="",
+ db_index=True,
+ help_text=_("Generated automatically - do not edit"),
+ )
complete_identifier = models.TextField(
_("Complete identifier"), blank=True, default=""
)
@@ -4001,6 +4008,19 @@ class CompleteIdentifierItem(models.Model, ImageContainerModel):
return ""
return self.qrcode.path
+ def _profile_generate_cached_label(self):
+ slug = getattr(self, "SLUG", None)
+ if not slug:
+ return
+ return get_generated_id(slug + "_cached_label", self)
+
+ def _generate_cached_label(self):
+ label = self._profile_generate_cached_label()
+ if not label:
+ # to be eventually overloaded by parent class
+ return str(self)
+ return label
+
def generate_qrcode(self, request=None, secure=True, tmpdir=None):
url = self.get_absolute_url()
site = Site.objects.get_current()