diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-05-18 12:31:50 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-05-18 12:34:10 +0200 | 
| commit | 0c6c694b743cef4517df63ad93c6af4f7dc757cb (patch) | |
| tree | 03550b62cdaa5c5075e2166b28e3554179e3dd31 /ishtar_common | |
| parent | be5ccea0659c912e263650dcadd31581916c103d (diff) | |
| download | Ishtar-0c6c694b743cef4517df63ad93c6af4f7dc757cb.tar.bz2 Ishtar-0c6c694b743cef4517df63ad93c6af4f7dc757cb.zip  | |
Person: fix raw_name reinit when no name is given
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/models.py | 6 | ||||
| -rw-r--r-- | ishtar_common/tests.py | 10 | ||||
| -rw-r--r-- | ishtar_common/version.py | 4 | 
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():  | 
