Workaround für kaputte Übersetzung von Buttons in Formularen (#166)

Fixes #165.

Co-authored-by: Tobias Bölz <tobias@boelz.eu>
Reviewed-on: #166
pull/170/head
Tobias Bölz 1 month ago
parent 336be17369
commit 6d2b3c487d

@ -1,11 +1,13 @@
from crispy_forms.helper import FormHelper
from crispy_forms.layout import ButtonHolder, Div, Fieldset, Layout, Submit
from crispy_forms.layout import ButtonHolder, Div, Fieldset, Layout
from django.core.validators import MaxValueValidator, MinValueValidator
from django.forms import (DateInput, FileField, FileInput, ModelForm,
NumberInput, ValidationError)
from django.utils.translation import gettext_lazy as _
from schwifty import IBAN
from core.forms_layout import Submit
from .models import (ApplicationForNearTermFunding,
ApplicationForNextYearFunding, Payment, RequestForPayment,
VotingResult)

@ -1,11 +1,13 @@
from crispy_forms.helper import FormHelper
from crispy_forms.layout import HTML, ButtonHolder, Layout, Submit
from crispy_forms.layout import HTML, ButtonHolder, Layout
from django.db import transaction
from django.http import Http404
from django.shortcuts import get_object_or_404
from django.urls import reverse
from django.utils.translation import gettext_lazy as _
from core.forms_layout import Submit
from .models import ApplicationForFunding

@ -0,0 +1,18 @@
from crispy_forms.layout import Submit as CrispySubmit
from crispy_forms.utils import TEMPLATE_PACK
class Submit(CrispySubmit):
"""
Replacement for django-crispy-forms Submit that doesnt fuck up the
values translation.
"""
def __init__(self, name, value, *, css_id=None, css_class=None,
template=None, **kwargs):
super().__init__(name, value, css_id=css_id, css_class=css_class,
template=template, **kwargs)
self.actual_value = value
def render(self, form, context, template_pack=TEMPLATE_PACK, **kwargs):
self.value = self.actual_value
return super().render(form, context, template_pack, **kwargs)

@ -1,11 +1,13 @@
from crispy_forms.bootstrap import AppendedText, InlineRadios
from crispy_forms.helper import FormHelper
from crispy_forms.layout import (HTML, ButtonHolder, Div, Field, Fieldset,
Layout, Submit)
Layout)
from django.forms import ModelForm, NumberInput, RadioSelect, ValidationError
from django.utils.translation import gettext_lazy as _
from schwifty import IBAN
from core.forms_layout import Submit
from .models import ApplicationForMembership

@ -1,6 +1,6 @@
[tool.poetry]
name = "vereinsverwaltung"
version = "20230419"
version = "20230429"
description = "Antrags-, Mitglieder- und Benutzerverwaltung für den Förderverein der Studierendenschaft des KIT e. V."
authors = ["Tobias Bölz <tobias@boelz.eu>"]
license = "AGPL-3.0-or-later"

Loading…
Cancel
Save