From bc3273fea4764b43e68473e344ee26a0e49a6a41 Mon Sep 17 00:00:00 2001 From: Ihsan Ullah Date: Sun, 13 Oct 2024 16:05:29 +0500 Subject: [PATCH 1/2] submissions panel and leaderboard now shows submission time in local time zone --- src/apps/api/serializers/submission_leaderboard.py | 2 +- src/apps/api/serializers/submissions.py | 2 +- .../riot/competitions/detail/leaderboards.tag | 9 ++++++++- .../riot/competitions/detail/submission_manager.tag | 13 ++++++++++++- 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/apps/api/serializers/submission_leaderboard.py b/src/apps/api/serializers/submission_leaderboard.py index f4d9594af..368f8fec4 100644 --- a/src/apps/api/serializers/submission_leaderboard.py +++ b/src/apps/api/serializers/submission_leaderboard.py @@ -20,7 +20,7 @@ class SubmissionLeaderBoardSerializer(serializers.ModelSerializer): display_name = serializers.CharField(source='owner.display_name') slug_url = serializers.CharField(source='owner.slug_url') organization = SimpleOrganizationSerializer(allow_null=True) - created_when = serializers.DateTimeField(format="%Y-%m-%d %H:%M") + created_when = serializers.DateTimeField() class Meta: model = Submission diff --git a/src/apps/api/serializers/submissions.py b/src/apps/api/serializers/submissions.py index 1f31fe2c3..5511c027e 100644 --- a/src/apps/api/serializers/submissions.py +++ b/src/apps/api/serializers/submissions.py @@ -26,7 +26,7 @@ class SubmissionSerializer(serializers.ModelSerializer): phase_name = serializers.CharField(source='phase.name') on_leaderboard = serializers.BooleanField(read_only=True) task = TaskSerializer() - created_when = serializers.DateTimeField(format="%Y-%m-%d %H:%M") + created_when = serializers.DateTimeField() auto_run = serializers.SerializerMethodField(read_only=True) can_make_submissions_public = serializers.SerializerMethodField(read_only=True) diff --git a/src/static/riot/competitions/detail/leaderboards.tag b/src/static/riot/competitions/detail/leaderboards.tag index 7ddef46ea..b004d5ce9 100644 --- a/src/static/riot/competitions/detail/leaderboards.tag +++ b/src/static/riot/competitions/detail/leaderboards.tag @@ -84,7 +84,7 @@ { submission.owner } { submission.organization.name } {submission.num_entries} - {submission.created_when} + { pretty_date(submission.created_when) } {submission.id} @@ -108,6 +108,13 @@ self.enable_detailed_results = false self.show_detailed_results_in_leaderboard = false + self.pretty_date = function (date_string) { + if (!!date_string) { + return luxon.DateTime.fromISO(date_string).toFormat('yyyy-MM-dd HH:mm') + } else { + return '' + } + } self.bold_class = function(column, submission){ // Return `text-bold` if submission has diff --git a/src/static/riot/competitions/detail/submission_manager.tag b/src/static/riot/competitions/detail/submission_manager.tag index 0f76b320b..fe71c2c1f 100644 --- a/src/static/riot/competitions/detail/submission_manager.tag +++ b/src/static/riot/competitions/detail/submission_manager.tag @@ -89,7 +89,7 @@ { submission.filename } { submission.owner } { submission.phase.name } - { submission.created_when} + { pretty_date(submission.created_when) } { submission.status } @@ -201,6 +201,8 @@