diff --git a/src/open_inwoner/accounts/models.py b/src/open_inwoner/accounts/models.py index 07d4562e14..31b9842c68 100644 --- a/src/open_inwoner/accounts/models.py +++ b/src/open_inwoner/accounts/models.py @@ -313,7 +313,9 @@ def seed(self): return self._seed def get_full_name(self): - parts = (self.first_name, self.infix, self.last_name) + # validator allowed spaces as values + first_name = self.display_name.strip() or self.first_name.strip() + parts = (first_name, self.infix.strip(), self.last_name.strip()) return " ".join(p for p in parts if p) def get_short_name(self): diff --git a/src/open_inwoner/accounts/tests/test_user.py b/src/open_inwoner/accounts/tests/test_user.py index 50ac3fcc05..abd0b01a53 100644 --- a/src/open_inwoner/accounts/tests/test_user.py +++ b/src/open_inwoner/accounts/tests/test_user.py @@ -26,6 +26,23 @@ def test_get_full_name(self): user = User(first_name="", infix="", last_name="Bar") self.assertEqual(user.get_full_name(), "Bar") + # use display_name instead of first_name + user = User(first_name="Foo", display_name="Flexi", infix="de", last_name="Bar") + self.assertEqual(user.get_full_name(), "Flexi de Bar") + + # spaces everywhere + user = User(first_name="Foo", display_name=" ", infix="de", last_name="Bar") + self.assertEqual(user.get_full_name(), "Foo de Bar") + + user = User( + first_name=" ", + display_name=" ", + infix=" ", + last_name=" ", + email="foo@bar.nl", + ) + self.assertEqual(user.get_full_name(), "") + @freeze_time("2021-07-07 12:00:00") def test_get_age_same_day(self): with freeze_time("1990-07-07"):