templates: add a dynamic date format
More reader-friendly (in French at least).
This commit is contained in:
parent
8a95d43eb0
commit
79600e8598
|
@ -26,7 +26,7 @@
|
|||
<div>{% if c.date_created != c.date_modified %}
|
||||
Posté le {{ c.date_created|date }} (Modifié le {{ c.date_modified|date }})
|
||||
{% else %}
|
||||
Posté le {{ c.date_created|date }}
|
||||
Posté le {{ c.date_created|dyndate }}
|
||||
{% endif %}
|
||||
| <a href="{{ url_for('forum_topic', f=t.forum, page=(t,comments.page), _anchor=c.id) }}">#</a>
|
||||
| <a href="#">Modifier</a>
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
from app import app
|
||||
from datetime import datetime
|
||||
|
||||
@app.template_filter('date')
|
||||
def filter_date(date, format="%Y-%m-%d à %H:%M"):
|
||||
|
@ -6,4 +7,20 @@ def filter_date(date, format="%Y-%m-%d à %H:%M"):
|
|||
Print a date in a human-readable format.
|
||||
"""
|
||||
|
||||
if format == "dynamic":
|
||||
d = "1er" if date.day == 1 else int(date.day)
|
||||
m = ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet",
|
||||
"Août", "Septembre", "Octobre", "Novembre","Décembre"] \
|
||||
[date.month - 1]
|
||||
|
||||
# Omit current year in the dynamic format
|
||||
if date.year == datetime.now().year:
|
||||
format = f"{d} {m} à %H:%M"
|
||||
else:
|
||||
format = f"{d} {m} %Y à %H:%M"
|
||||
|
||||
return date.strftime(format)
|
||||
|
||||
@app.template_filter('dyndate')
|
||||
def filter_dyndate(date):
|
||||
return filter_date(date, format="dynamic")
|
||||
|
|
Loading…
Reference in New Issue