From efb015733796e58be5cc01359f04b6ee4325f8ad Mon Sep 17 00:00:00 2001 From: dadosch Date: Fri, 31 Aug 2018 00:04:02 +0200 Subject: [PATCH] add fix for messed up html at reminders, thanks to @brookst --- src/documents/admin.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/documents/admin.py b/src/documents/admin.py index 534f9143b..4143ef2a1 100644 --- a/src/documents/admin.py +++ b/src/documents/admin.py @@ -8,6 +8,8 @@ try: except ImportError: from django.urls import reverse from django.templatetags.static import static +from django.utils.safestring import mark_safe +from django.utils.html import format_html, format_html_join from .models import Correspondent, Tag, Document, Log @@ -180,7 +182,7 @@ class DocumentAdmin(CommonAdmin): ) } ) - return r + return mark_safe(r) tags_.allow_tags = True def document(self, obj): @@ -201,15 +203,14 @@ class DocumentAdmin(CommonAdmin): @staticmethod def _html_tag(kind, inside=None, **kwargs): - attributes = [] - for lft, rgt in kwargs.items(): - attributes.append('{}="{}"'.format(lft, rgt)) + attributes = format_html_join(' ', '{}="{}"', kwargs.items()) if inside is not None: - return "<{kind} {attributes}>{inside}".format( - kind=kind, attributes=" ".join(attributes), inside=inside) + return format_html("<{kind} {attributes}>{inside}", + kind=kind, attributes=attributes, inside=inside) - return "<{} {}/>".format(kind, " ".join(attributes)) + + return format_html("<{} {}/>", kind, attributes) class LogAdmin(CommonAdmin):