From 31b05b0d26466d85d456da7da816370038261325 Mon Sep 17 00:00:00 2001 From: Birger Schacht Date: Mon, 24 Jun 2024 09:47:28 +0200 Subject: [PATCH] fix(sample_project): fix countdown Closes: #992 --- sample_project/templatetags/sample_project.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/sample_project/templatetags/sample_project.py b/sample_project/templatetags/sample_project.py index ed06a3375..c21235969 100644 --- a/sample_project/templatetags/sample_project.py +++ b/sample_project/templatetags/sample_project.py @@ -1,4 +1,4 @@ -import datetime +from datetime import datetime, time, date, timedelta, UTC import pathlib from django import template @@ -12,6 +12,16 @@ def password(): @register.simple_tag def teardown(): - date = datetime.datetime.fromisoformat(pathlib.Path("/tmp/startup.txt").read_text()) - until = date + datetime.timedelta(hours=6) - return until + init_date = datetime.combine(date.today(), time(0, 30, 0), tzinfo=UTC) + # create timetsamps for today + timestamps = [ + init_date, + init_date.replace(hour=6), + init_date.replace(hour=12), + init_date.replace(hour=18), + ] + # create timestamps for tomorrow + timestamps += list(map(lambda x: x + timedelta(hours=24), timestamps)) + # filter timestamps that are after now + timestamps = list(filter(lambda x: x > datetime.now(UTC), timestamps)) + return timestamps[0]