diff --git a/gergelypolonkaieu_site/plugins/custom_roles.py b/gergelypolonkaieu_site/plugins/custom_roles.py index 7ce07dd..9012b2d 100644 --- a/gergelypolonkaieu_site/plugins/custom_roles.py +++ b/gergelypolonkaieu_site/plugins/custom_roles.py @@ -1,3 +1,5 @@ +from datetime import datetime + from docutils import nodes from docutils.parsers import rst @@ -14,10 +16,21 @@ def del_role(name, rawtext, text, lineno, inliner, options=None, content=None): return [nodes.raw('', f'{text}', format='html')], [] +def exp_years_role(*args, **kwargs): + now = datetime.utcnow() + exp_range = now - datetime(1993, 9, 1) + exp_years = int(exp_range.total_seconds() / 31536000) + + html_text = f'{exp_years}' + + return [nodes.raw('', html_text, format='html')], [] + + def register_roles(): rst.roles.register_local_role('kbd', keyboard_role) rst.roles.register_local_role('sup', superscript_role) rst.roles.register_local_role('del', del_role) + rst.roles.register_local_role('exp_years', exp_years_role) def register():