typing for jinja2 filters

This commit is contained in:
Iain Learmonth 2022-04-22 14:56:59 +01:00
parent 120be8eaa5
commit a916041021

View file

@ -16,16 +16,16 @@ portal = Blueprint("portal", __name__, template_folder="templates", static_folde
@portal.app_template_filter("mirror_expiry")
def calculate_mirror_expiry(s):
def calculate_mirror_expiry(s: datetime) -> str:
expiry = s + timedelta(days=3)
countdown = expiry - datetime.now(timezone.utc)
countdown = expiry - datetime.utcnow()
if countdown.days == 0:
return f"{countdown.seconds // 3600} hours"
return f"{countdown.days} days"
@portal.app_template_filter("format_datetime")
def format_datetime(s):
def format_datetime(s: datetime) -> str:
if s is None:
return "Unknown"
return s.strftime("%a, %d %b %Y %H:%M:%S")