diff --git a/netbox/project-static/css/base.css b/netbox/project-static/css/base.css index ec45f43e5..6bff895c8 100644 --- a/netbox/project-static/css/base.css +++ b/netbox/project-static/css/base.css @@ -234,6 +234,58 @@ table.report th a { margin-bottom: 0; } +/* Admonition (docs) */ +.admonition { + margin-bottom: 10px; + padding-bottom: 2px; +} +.admonition p { + padding: 0 12px; +} +.admonition pre { + margin: 0 12px 10px; +} +.admonition p.admonition-title { + color: rgb(255, 255, 255); + font-weight: bold; + padding: 4px 12px; +} +.admonition p.admonition-title::before { + content: "\f06a"; + font-family: "FontAwesome"; + margin-right: 4px; +} +/* Admonition - Note */ +.admonition.note { + background-color: rgb(231, 242, 250); +} +.admonition.note .admonition-title { + background-color: rgb(106, 176, 222); +} +.admonition.note .admonition-title::before { + content: "\f05a"; +} +/* Admonition - Warning */ +.admonition.warning { + background-color: rgb(255, 237, 204); +} +.admonition.warning .admonition-title { + background-color: rgb(240, 179, 126); +} +.admonition.warning .admonition-title::before { + content: "\f06a"; +} +/* Admonition - Danger */ +.admonition.danger { + background-color: rgb(253, 243, 242); +} +.admonition.danger .admonition-title { + background-color: rgb(242, 159, 151); +} +.admonition.danger .admonition-title::before { + content: "\f071"; +} + /* AJAX loader */ .loading { position: fixed; diff --git a/netbox/utilities/templatetags/helpers.py b/netbox/utilities/templatetags/helpers.py index b4578b9f9..4d957b63f 100644 --- a/netbox/utilities/templatetags/helpers.py +++ b/netbox/utilities/templatetags/helpers.py @@ -63,8 +63,8 @@ def gfm(value): # Strip HTML tags value = strip_tags(value) - # Render Markdown with GFM extension - html = markdown(value, extensions=['mdx_gfm']) + # Render Markdown with GitHub-flavored extension + html = markdown(value, extensions=['gfm']) return mark_safe(html) @@ -225,7 +225,8 @@ def get_docs(model): with open(path) as docfile: content = docfile.read() - content = markdown(content, extensions=['mdx_gfm']) + # Render Markdown with GFM, admonition + content = markdown(content, extensions=['gfm', 'admonition']) return mark_safe(content)