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

1from django import template 

2from django.utils.html import escape 

3from django.utils.safestring import mark_safe 

4from django.utils.translation import gettext as _ 

5 

6register = template.Library() 

7 

8 

9@register.simple_tag(takes_context=True) 

10def render_widget(context, widget): 

11 request = context['request'] 

12 

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 """)