You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
from django import template
|
|
|
|
from django.utils.safestring import mark_safe
|
|
|
|
from datetime import datetime, timedelta
|
|
|
|
from pytz import timezone
|
|
|
|
from mamweb.settings import TIME_ZONE
|
|
|
|
import logging
|
|
|
|
register = template.Library()
|
|
|
|
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
|
|
@register.filter(name='kratke_datum', expects_localtime=True)
|
|
|
|
def kratke_datum(dt):
|
|
|
|
# None dává None, ne-datum dává False, aby se daly použít filtry typu "default".
|
|
|
|
if dt is None:
|
|
|
|
return None
|
|
|
|
if not isinstance(dt, datetime):
|
|
|
|
logger.warning(f"Špatné volání filtru {__name__}: {dt}")
|
|
|
|
return False
|
|
|
|
out = f'<time datetime="{dt.isoformat()}" title="{dt.strftime("%d. %m. %Y %H:%M")}">{dt.day}.{dt.month}.<span style="text-decoration:overline">{dt.year%100}</time>'
|
|
|
|
return mark_safe(out)
|