Allow markdown on signup text

This commit is contained in:
Andrew Godwin 2022-12-17 17:02:42 -07:00
parent 03929e12ea
commit 77ef358fef
3 changed files with 12 additions and 2 deletions

View file

@ -7,7 +7,7 @@
{% csrf_token %}
<fieldset>
<legend>Create An Account</legend>
{% if config.signup_text %}{{ config.signup_text|safe|linebreaks }}{% endif %}
{% if signup_text %}{{ signup_text }}{% endif %}
{% if config.signup_allowed %}
{% for field in form %}
{% include "forms/_field.html" %}

View file

@ -77,7 +77,7 @@ class BasicSettings(AdminSettingsPage):
},
"signup_text": {
"title": "Signup Page Text",
"help_text": "Shown above the signup form",
"help_text": "Shown above the signup form.\nUse Markdown for formatting.",
"display": "textarea",
},
"restricted_usernames": {

View file

@ -1,9 +1,11 @@
import markdown_it
from django import forms
from django.conf import settings
from django.contrib.auth.forms import AuthenticationForm
from django.contrib.auth.password_validation import validate_password
from django.contrib.auth.views import LoginView, LogoutView
from django.shortcuts import get_object_or_404, render
from django.utils.safestring import mark_safe
from django.utils.translation import gettext_lazy as _
from django.views.generic import FormView
@ -110,6 +112,14 @@ class Signup(FormView):
{"email": user.email},
)
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
if Config.system.signup_text:
context["signup_text"] = mark_safe(
markdown_it.MarkdownIt().render(Config.system.signup_text)
)
return context
class TriggerReset(FormView):