diff --git a/src/c3nav/mapdata/models/base.py b/src/c3nav/mapdata/models/base.py index cac6414d..e5d584fe 100644 --- a/src/c3nav/mapdata/models/base.py +++ b/src/c3nav/mapdata/models/base.py @@ -1,7 +1,6 @@ from collections import OrderedDict from django.db import models -from django.utils.translation import get_language EDITOR_FORM_MODELS = OrderedDict() @@ -11,12 +10,3 @@ class EditorFormMixin(models.Model): class Meta: abstract = True - - @property - def title(self): - if not hasattr(self, 'titles'): - return self.name - lang = get_language() - if lang in self.titles: - return self.titles[lang] - return next(iter(self.titles.values())) if self.titles else self.name diff --git a/src/c3nav/mapdata/models/locations.py b/src/c3nav/mapdata/models/locations.py index dec8c48e..44f7fede 100644 --- a/src/c3nav/mapdata/models/locations.py +++ b/src/c3nav/mapdata/models/locations.py @@ -5,7 +5,7 @@ from django.core.cache import cache from django.db import models from django.utils.functional import cached_property from django.utils.translation import ugettext_lazy as _ -from django.utils.translation import ungettext_lazy +from django.utils.translation import get_language, ungettext_lazy from c3nav.mapdata.fields import GeometryField, JSONField, validate_bssid_lines from c3nav.mapdata.lastupdate import get_last_mapdata_update @@ -42,6 +42,15 @@ class Location(LocationSlug, models.Model): result['titles'] = OrderedDict(sorted(self.titles.items())) return result + @property + def title(self): + if not hasattr(self, 'titles'): + return self.name + lang = get_language() + if lang in self.titles: + return self.titles[lang] + return next(iter(self.titles.values())) if self.titles else self.name + @property def subtitle(self): return self._meta.verbose_name