summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/models.py6
-rw-r--r--ishtar_common/tests.py10
-rw-r--r--ishtar_common/version.py4
3 files changed, 15 insertions, 5 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 6b4959496..d2a476640 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -2726,8 +2726,8 @@ class Person(Address, Merge, OwnPerms, ValueGetter, MainItem):
def _generate_cached_label(self):
lbl = get_generated_id("person_raw_name", self)
- if not lbl:
- return "-"
+ if not lbl.strip():
+ return self.raw_name or "-"
if self.attached_to:
attached_to = str(self.attached_to)
lbl += " ({})".format(attached_to)
@@ -2897,7 +2897,7 @@ class Person(Address, Merge, OwnPerms, ValueGetter, MainItem):
def save(self, *args, **kwargs):
super(Person, self).save(*args, **kwargs)
raw_name = get_generated_id("person_raw_name", self)
- if raw_name and self.raw_name != raw_name:
+ if raw_name.strip() and self.raw_name != raw_name:
self.raw_name = raw_name
self.save()
if hasattr(self, "responsible_town_planning_service"):
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py
index 8ef083c9f..bd37226ff 100644
--- a/ishtar_common/tests.py
+++ b/ishtar_common/tests.py
@@ -2639,10 +2639,20 @@ class IshtarBasicTest(TestCase):
def test_person_rawname(self):
person = models.Person.objects.create(name="Weasley", surname="Bill")
+ person = models.Person.objects.get(pk=person.pk)
self.assertEqual(person.raw_name, "WEASLEY Bill")
+ self.assertEqual(person.cached_label, "WEASLEY Bill")
person.surname = "George"
person.save()
+ person = models.Person.objects.get(pk=person.pk)
self.assertEqual(person.raw_name, "WEASLEY George")
+ self.assertEqual(person.cached_label, "WEASLEY George")
+ # do not delete raw_name when no name, surname is available
+ person.name, person.surname, person.raw_name = "", "", "POTTER Harry"
+ person.save()
+ person = models.Person.objects.get(pk=person.pk)
+ self.assertEqual(person.raw_name, "POTTER Harry")
+ self.assertEqual(person.cached_label, "POTTER Harry")
def test_show(self):
person = models.Person.objects.create(name="Weasley", surname="Bill")
diff --git a/ishtar_common/version.py b/ishtar_common/version.py
index 511f161d2..c4eff2b4c 100644
--- a/ishtar_common/version.py
+++ b/ishtar_common/version.py
@@ -1,5 +1,5 @@
-# 3.1.62
-VERSION = (3, 1, 62)
+# 3.1.64
+VERSION = (3, 1, 64)
def get_version():