Jarvis/jarvis/tools/templatetags/menuitems.py

51 lines
1.3 KiB
Python

from django import template
from django.utils.html import format_html
from django.urls import reverse
register = template.Library()
@register.simple_tag(takes_context=True)
def menuitem(context, url, css_class, title):
url = reverse(url)
# css_class = "" + css_class
if len(url) > 1:
if context.request.path.startswith(url):
return format_html(
'<li class="active"><a href="{}"><i class="{}"></i><p>{}</p></a></li>',
url,
css_class,
title,
)
if url == "/admin/":
return format_html(
'<li><a href="{}" target="_blank"><i class="{}"></i><p>{}</p></a></li>',
url,
css_class,
title,
)
return format_html(
'<li><a href="{}"><i class="{}"></i><p>{}</p></a></li>',
url,
css_class,
title,
)
if context.request.path == url: # si le contexte est "/"
return format_html(
'<li class="active"><a href="{}"><i class="{}"></i><p>{}</p></a></li>',
url,
css_class,
title,
)
return format_html(
'<li><a href="{}"><i class="{}"></i><p>{}</p></a></li>',
url,
css_class,
title,
)