Skip to content
Snippets Groups Projects
Commit 9221e989 authored by Julian's avatar Julian
Browse files

Start including django-select2 into rebus

This didn't work. Now it's @yuha 's turn
parent 594e7d45
No related branches found
No related tags found
1 merge request!6Add ckeditor in FAQ questions admin interface
from django import forms
from django.utils.translation import ugettext_lazy as _
from django_select2.forms import Select2Widget
from .models import REBUSSelectModel
class FAQForm(forms.Form):
......@@ -7,7 +9,7 @@ class FAQForm(forms.Form):
label=_("Your questions"), required=True)
class REBUSForm(forms.Form):
class REBUSForm_old(forms.Form):
a = forms.CharField(label=_("Category A"), required=True)
b = forms.CharField(label=_("Category B"), required=False)
c = forms.CharField(label=_("Category C"), required=False)
......@@ -54,3 +56,22 @@ class FeedbackForm(forms.Form):
label=_("Do you have some Ideas what we could implement in AlekSIS?"),
required=False,
widget=forms.Textarea)
class REBUSForm(forms.Form):
selects = []
for select in REBUSSelectModel.objects.filter(toplevel=True):
choices = []
for s in select.children:
choices.append(s.name)
choice_field = forms.ChoiceField(
label=_(select.name),
widget=Select2Widget(),
choices=choices,
)
short_description = forms.CharField(label=_("Please describe the error in one sentence."), required=True)
long_description = forms.CharField(widget=forms.Textarea, label=_("Please describe the error more detailed."),
required=False)
......@@ -5,13 +5,13 @@ from django.utils.translation import ugettext_lazy as _
from .model_helper import COLORS, ICONS
class MailSettings(dbsettings.Group):
mail_rebus = dbsettings.EmailValue(_("Email address for REBUS"))
mail_feedback = dbsettings.EmailValue(_("Email address for Feedback"))
mail_questions = dbsettings.EmailValue(_("Email address for questions/help"))
class Support(models.Model):
class Meta:
permissions = (
......@@ -23,7 +23,8 @@ class Support(models.Model):
class FAQSection(models.Model):
name = models.CharField(max_length=200, verbose_name=_("Name"))
icon = models.CharField(max_length=50, blank=True, default="question_answer", choices=ICONS, verbose_name=_("Symbol"))
icon = models.CharField(max_length=50, blank=True, default="question_answer", choices=ICONS,
verbose_name=_("Symbol"))
icon_color = models.CharField(max_length=20, default="black", choices=COLORS, verbose_name=_("Symbol colour"))
def __str__(self):
......@@ -36,13 +37,15 @@ class FAQSection(models.Model):
class FAQQuestion(models.Model):
question_text = models.TextField(verbose_name=_("Question"))
icon = models.CharField(max_length=50, blank=True, default="question_answer", choices=ICONS, verbose_name=_("Symbol"))
icon = models.CharField(max_length=50, blank=True, default="question_answer", choices=ICONS,
verbose_name=_("Symbol"))
show = models.BooleanField(verbose_name=_("Published"), default=False)
answer_text = models.TextField(blank=True,
help_text=_("Bei den Antworten funktioniert auch HTML-Syntax!<br> Aus Gründen des "
"verwendeten CSS-Frameworks muss der Tag <strong>&lt;ul&gt;</strong> die "
"CSS-Klasse <em>browser-default</em> besitzen!"), verbose_name=_("Answer"))
"verwendeten CSS-Frameworks muss der Tag <strong>&lt;ul&gt;</strong> die "
"CSS-Klasse <em>browser-default</em> besitzen!"),
verbose_name=_("Answer"))
section = models.ForeignKey(FAQSection, on_delete=models.CASCADE, blank=True, related_name="questions",
verbose_name=_("Section"))
......@@ -55,4 +58,12 @@ class FAQQuestion(models.Model):
verbose_name_plural = _("FAQ questions")
class REBUSSelectModel(models.Model):
name = models.CharField(max_length=40, verbose_name=_("category name"))
icon = models.CharField(max_length=50, verbose_name=_("icon"), blank=True)
parent = models.ForeignKey("self", related_name="children", on_delete=models.CASCADE)
toplevel = models.BooleanField(verbose_name=_("toplevel select or optgroup"), null=True, blank=True)
mail_settings = MailSettings(_("Mail adresses"))
......@@ -61,7 +61,7 @@
</script>
{# Include React for dynamic select #}
{% include "components/react.html" %}
{ include "components/react.html" %}
<script src="{% static "js/hjelp.js" %}"></script>
{% endblock %}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment