Coverage for extras/templatetags/dashboard.py: 50%
14 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 18:35 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 18:35 +0000
1from django import template
2from django.utils.html import escape
3from django.utils.safestring import mark_safe
4from django.utils.translation import gettext as _
6register = template.Library()
9@register.simple_tag(takes_context=True)
10def render_widget(context, widget):
11 request = context['request']
13 try:
14 return widget.render(request)
15 except Exception as e:
16 message1 = _('An error was encountered when attempting to render this widget:')
17 message2 = _('Please try reconfiguring the widget, or remove it from your dashboard.')
18 return mark_safe(f"""
19 <p>
20 <span class="text-danger"><i class="mdi mdi-alert"></i></span>
21 {message1}
22 </p>
23 <p class="font-monospace ps-3">{escape(e)}</p>
24 <p>{message2}</p>
25 """)