From 3b05a552aaf477e4ba1b8cc38bfe48e8b20422c6 Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Mon, 2 Dec 2019 18:36:44 +0300 Subject: [PATCH] Tz field for establishments (cherry picked from commit a537f04) --- apps/establishment/models.py | 5 +++++ apps/establishment/serializers/common.py | 3 ++- apps/search_indexes/documents/establishment.py | 1 + apps/search_indexes/serializers.py | 1 + 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/apps/establishment/models.py b/apps/establishment/models.py index c5533d52..c5da4094 100644 --- a/apps/establishment/models.py +++ b/apps/establishment/models.py @@ -541,6 +541,11 @@ class Establishment(GalleryModelMixin, ProjectBaseMixin, URLImageMixin, time_at_est_tz = now_at_est_tz.time() return schedule_for_today.ending_time > time_at_est_tz > schedule_for_today.opening_time + @property + def timezone_as_str(self): + """ Returns tz in str format""" + return self.tz.localize(datetime.now()).strftime('%z') + @property def tags_indexing(self): return [{'id': tag.metadata.id, diff --git a/apps/establishment/serializers/common.py b/apps/establishment/serializers/common.py index cb102ff1..7364d02c 100644 --- a/apps/establishment/serializers/common.py +++ b/apps/establishment/serializers/common.py @@ -286,7 +286,7 @@ class EstablishmentBaseSerializer(ProjectModelSerializer): preview_image = serializers.URLField(source='preview_image_url', allow_null=True, read_only=True) - + tz = serializers.CharField(read_only=True, source='timezone_as_str') new_image = ImageBaseSerializer(source='crop_main_image', allow_null=True, read_only=True) class Meta: @@ -311,6 +311,7 @@ class EstablishmentBaseSerializer(ProjectModelSerializer): 'image', 'preview_image', 'new_image', + 'tz', ] diff --git a/apps/search_indexes/documents/establishment.py b/apps/search_indexes/documents/establishment.py index e53b93de..b1983b61 100644 --- a/apps/search_indexes/documents/establishment.py +++ b/apps/search_indexes/documents/establishment.py @@ -124,6 +124,7 @@ class EstablishmentDocument(Document): }, ) favorites_for_users = fields.ListField(field=fields.IntegerField()) + tz = fields.KeywordField(attr='timezone_as_str') class Django: diff --git a/apps/search_indexes/serializers.py b/apps/search_indexes/serializers.py index b45bd2e3..654d3354 100644 --- a/apps/search_indexes/serializers.py +++ b/apps/search_indexes/serializers.py @@ -251,6 +251,7 @@ class EstablishmentDocumentSerializer(InFavoritesMixin, DocumentSerializer): 'works_noon', 'works_evening', 'works_at_weekday', + 'tz', # 'works_now', # 'collections', # 'establishment_type',