From a8861238ac1635a408aaff3fba356b3c5bdc4aff Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Wed, 16 Oct 2019 14:11:07 +0300 Subject: [PATCH] Time format for country --- apps/location/models.py | 11 +++++++++++ apps/main/serializers.py | 4 +++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/apps/location/models.py b/apps/location/models.py index fc81ec37..c33675d3 100644 --- a/apps/location/models.py +++ b/apps/location/models.py @@ -15,6 +15,13 @@ class Country(TranslatedFieldsMixin, SVGImageMixin, ProjectBaseMixin): STR_FIELD_NAME = 'name' + TWENTEEN_HOURS_FORMAT_COUNTRIES = [ + 'ca', # Canada + 'au', # Australia + 'us', # USA + 'nz', # New Zeland + ] + name = TJSONField(null=True, blank=True, default=None, verbose_name=_('Name'), help_text='{"en-GB":"some text"}') code = models.CharField(max_length=255, unique=True, verbose_name=_('Code')) @@ -23,6 +30,10 @@ class Country(TranslatedFieldsMixin, SVGImageMixin, ProjectBaseMixin): languages = models.ManyToManyField(Language, verbose_name=_('Languages')) old_id = models.IntegerField(null=True, blank=True, default=None) + @property + def time_format(self): + return 'hh:mmA' if self.code.lower() in self.TWENTEEN_HOURS_FORMAT_COUNTRIES else 'hh:mm' + @property def country_id(self): return self.id diff --git a/apps/main/serializers.py b/apps/main/serializers.py index f939c448..c5ce9b25 100644 --- a/apps/main/serializers.py +++ b/apps/main/serializers.py @@ -64,6 +64,7 @@ class SiteSettingsSerializer(serializers.ModelSerializer): country_code = serializers.CharField(source='subdomain', read_only=True) country_name = serializers.CharField(source='country.name_translated', read_only=True) + time_format = serializers.CharField(source='country.time_format', read_only=True) class Meta: """Meta class.""" @@ -71,6 +72,7 @@ class SiteSettingsSerializer(serializers.ModelSerializer): model = models.SiteSettings fields = ( 'country_code', + 'time_format', 'subdomain', 'pinterest_page_url', 'twitter_page_url', @@ -81,7 +83,7 @@ class SiteSettingsSerializer(serializers.ModelSerializer): 'ad_config', 'published_features', 'currency', - 'country_name' + 'country_name', )