From 156680aea03e7ec24cbbb6756cb1542184a1fc91 Mon Sep 17 00:00:00 2001 From: Arthur Date: Tue, 19 Sep 2023 14:37:18 -0700 Subject: [PATCH 1/3] 12685 use markdown for custom fields added to form --- netbox/extras/models/customfields.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/netbox/extras/models/customfields.py b/netbox/extras/models/customfields.py index 0c4a0c6159b..00c8da91b80 100644 --- a/netbox/extras/models/customfields.py +++ b/netbox/extras/models/customfields.py @@ -1,4 +1,5 @@ import decimal +import markdown import re from datetime import datetime, date @@ -498,7 +499,7 @@ def to_form_field(self, set_initial=True, enforce_required=True, enforce_visibil field.model = self field.label = str(self) if self.description: - field.help_text = escape(self.description) + field.help_text = markdown.markdown(escape(self.description)) # Annotate read-only fields if enforce_visibility and self.ui_visibility == CustomFieldVisibilityChoices.VISIBILITY_READ_ONLY: From 4b352c941f300a4a4eb72e81c934842d6e777008 Mon Sep 17 00:00:00 2001 From: Arthur Date: Wed, 20 Sep 2023 08:13:04 -0700 Subject: [PATCH 2/3] 13809 change markdown to use utilities --- netbox/extras/models/customfields.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/netbox/extras/models/customfields.py b/netbox/extras/models/customfields.py index 00c8da91b80..019c93a3759 100644 --- a/netbox/extras/models/customfields.py +++ b/netbox/extras/models/customfields.py @@ -1,5 +1,4 @@ import decimal -import markdown import re from datetime import datetime, date @@ -29,6 +28,7 @@ from utilities.forms.utils import add_blank_choice from utilities.forms.widgets import APISelect, APISelectMultiple, DatePicker, DateTimePicker from utilities.querysets import RestrictedQuerySet +from utilities.templatetags.builtins.filters import render_markdown from utilities.validators import validate_regex __all__ = ( @@ -499,7 +499,7 @@ def to_form_field(self, set_initial=True, enforce_required=True, enforce_visibil field.model = self field.label = str(self) if self.description: - field.help_text = markdown.markdown(escape(self.description)) + field.help_text = render_markdown(self.description) # Annotate read-only fields if enforce_visibility and self.ui_visibility == CustomFieldVisibilityChoices.VISIBILITY_READ_ONLY: From 0f63f4ad9a5b07c2b5a32c0fd8ca1ca3a2e5dcc7 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Wed, 20 Sep 2023 14:04:13 -0400 Subject: [PATCH 3/3] Add help_text for CustomField description indicating Markdown support --- netbox/extras/forms/model_forms.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/netbox/extras/forms/model_forms.py b/netbox/extras/forms/model_forms.py index c8afeb090ae..7bc83b715a6 100644 --- a/netbox/extras/forms/model_forms.py +++ b/netbox/extras/forms/model_forms.py @@ -76,7 +76,8 @@ class Meta: 'type': _( "The type of data stored in this field. For object/multi-object fields, select the related object " "type below." - ) + ), + 'description': _("This will be displayed as help text for the form field. Markdown is supported.") } def __init__(self, *args, **kwargs):