Django Sitemap Framework integriert
This commit is contained in:
@@ -16,7 +16,11 @@ from utils.massmailer import MassMailer
|
||||
class MembershipForm(forms.ModelForm):
|
||||
error_css_class = 'error'
|
||||
required_css_class = 'required'
|
||||
birthday = forms.DateField(label=_('birthday'), required=False)
|
||||
birthday = forms.DateField(
|
||||
label=_('birthday'),
|
||||
required=False,
|
||||
help_text=_('Input format: yyyy-mm-dd')
|
||||
)
|
||||
email = forms.EmailField(label=_('Email'), required=True)
|
||||
|
||||
class Meta:
|
||||
@@ -33,13 +37,6 @@ class MembershipForm(forms.ModelForm):
|
||||
Please fill out this field yet.'))
|
||||
return self.cleaned_data['birthday']
|
||||
|
||||
def clean_telephone(self):
|
||||
if self.cleaned_data['membership'] and not self.cleaned_data[
|
||||
'telephone']:
|
||||
raise forms.ValidationError(_('For your membership, we need this. \
|
||||
Please fill out this field yet.'))
|
||||
return self.cleaned_data['telephone']
|
||||
|
||||
def clean_street_name(self):
|
||||
if self.cleaned_data['membership'] and not self.cleaned_data[
|
||||
'street_name']:
|
||||
@@ -68,10 +65,8 @@ class RegistrationForm(MembershipForm):
|
||||
requires the password to be entered twice to catch typos.
|
||||
sends an activation request per mail, to validate the eMail.
|
||||
"""
|
||||
password1 = forms.CharField(widget=forms.PasswordInput(),
|
||||
label=_('password'))
|
||||
password2 = forms.CharField(widget=forms.PasswordInput(),
|
||||
label=_('password (again)'))
|
||||
password1 = forms.CharField(widget=forms.PasswordInput(), label=_('password'))
|
||||
password2 = forms.CharField(widget=forms.PasswordInput(), label=_('password (again)'))
|
||||
recaptcha = forms.ReCaptchaField()
|
||||
|
||||
class Meta:
|
||||
|
||||
@@ -7,8 +7,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: kasu.membership\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-16 18:07+0200\n"
|
||||
"PO-Revision-Date: 2016-09-16 19:06+0200\n"
|
||||
"POT-Creation-Date: 2016-09-28 00:25+0200\n"
|
||||
"PO-Revision-Date: 2016-09-28 00:24+0200\n"
|
||||
"Last-Translator: Christian Berg <xeniac@posteo.at>\n"
|
||||
"Language-Team: Kasu <verein@kasu.at>\n"
|
||||
"Language: de\n"
|
||||
@@ -35,60 +35,64 @@ msgstr "Gruppe"
|
||||
msgid "Groups"
|
||||
msgstr "Gruppen"
|
||||
|
||||
#: src/membership/admin.py:61 src/membership/models.py:162
|
||||
#: src/membership/models.py:210
|
||||
#: src/membership/templates/membership/register_form.html:28
|
||||
#: src/membership/admin.py:62 src/membership/models.py:164
|
||||
#: src/membership/models.py:215
|
||||
#: src/membership/templates/membership/register_form.html:32
|
||||
msgid "Membership"
|
||||
msgstr "Mitgliedschaft"
|
||||
|
||||
#: src/membership/admin.py:64
|
||||
#: src/membership/admin.py:65
|
||||
msgid "Permissions"
|
||||
msgstr "Berechtigung"
|
||||
|
||||
#: src/membership/admin.py:66
|
||||
#: src/membership/admin.py:67
|
||||
msgid "Important dates"
|
||||
msgstr "Wichtige Daten"
|
||||
|
||||
#: src/membership/forms.py:19
|
||||
#: src/membership/forms.py:20
|
||||
msgid "birthday"
|
||||
msgstr "Geburtstag"
|
||||
|
||||
#: src/membership/forms.py:20
|
||||
#: src/membership/forms.py:22
|
||||
msgid "Input format: yyyy-mm-dd"
|
||||
msgstr "Eingabeformat: tt.mm.jjjj"
|
||||
|
||||
#: src/membership/forms.py:24
|
||||
msgid "Email"
|
||||
msgstr "E-Mail"
|
||||
|
||||
#: src/membership/forms.py:32 src/membership/forms.py:39
|
||||
#: src/membership/forms.py:46 src/membership/forms.py:53
|
||||
#: src/membership/forms.py:36 src/membership/forms.py:43
|
||||
#: src/membership/forms.py:50
|
||||
msgid ""
|
||||
"For your membership, we need this. Please fill out this field "
|
||||
"yet."
|
||||
msgstr "Diese Angabe wird für eine Mitgliedschaft benötigt, bitte ausfüllen."
|
||||
|
||||
#: src/membership/forms.py:59
|
||||
#: src/membership/forms.py:56
|
||||
msgid ""
|
||||
"For your membership, we need this. Please fill out this field "
|
||||
"yet."
|
||||
msgstr "Diese Angabe wird für eine Mitgliedschaft benötigt, bitte ausfüllen."
|
||||
|
||||
#: src/membership/forms.py:72
|
||||
#: src/membership/forms.py:68
|
||||
msgid "password"
|
||||
msgstr "Passwort"
|
||||
|
||||
#: src/membership/forms.py:74
|
||||
#: src/membership/forms.py:69
|
||||
msgid "password (again)"
|
||||
msgstr "Passwort (wiederholen)"
|
||||
|
||||
#: src/membership/forms.py:97
|
||||
#: src/membership/forms.py:92
|
||||
msgid "This username is already taken. Please choose another."
|
||||
msgstr "Diesen Benutzername ist schon vergeben. Bitte einen anderen auswählen."
|
||||
|
||||
#: src/membership/forms.py:106
|
||||
#: src/membership/forms.py:101
|
||||
msgid ""
|
||||
"This email address is already in use. Please supply a different "
|
||||
"email address."
|
||||
msgstr "Die E-Mail Adresse wird schon verwendet. Bitte eine andere angeben."
|
||||
|
||||
#: src/membership/forms.py:115
|
||||
#: src/membership/forms.py:110
|
||||
msgid "The two password fields didn't match."
|
||||
msgstr "Die beiden Passwörter passen nicht."
|
||||
|
||||
@@ -100,70 +104,70 @@ msgstr "Männlich"
|
||||
msgid "Female"
|
||||
msgstr "Weiblich"
|
||||
|
||||
#: src/membership/models.py:88
|
||||
#: src/membership/models.py:90
|
||||
msgid "user"
|
||||
msgstr "Benutzer"
|
||||
|
||||
#: src/membership/models.py:90
|
||||
#: src/membership/models.py:92
|
||||
msgid "activation key"
|
||||
msgstr "Aktivierungsschlüssel"
|
||||
|
||||
#: src/membership/models.py:94
|
||||
#: src/membership/models.py:96
|
||||
msgid "pending activation"
|
||||
msgstr "Ausstehende Aktivierung"
|
||||
|
||||
#: src/membership/models.py:95
|
||||
#: src/membership/models.py:97
|
||||
msgid "pending activations"
|
||||
msgstr "Wartende Aktivierungen"
|
||||
|
||||
#: src/membership/models.py:98
|
||||
#: src/membership/models.py:100
|
||||
#, python-format
|
||||
msgid "user registration for %s"
|
||||
msgstr "Benutzerregistrierung für %s"
|
||||
|
||||
#: src/membership/models.py:145
|
||||
#: src/membership/models.py:147
|
||||
msgid "Gender"
|
||||
msgstr "Geschlecht"
|
||||
|
||||
#: src/membership/models.py:164
|
||||
#: src/membership/models.py:166
|
||||
msgid ""
|
||||
"Yes, I confirm that I am in agreement with the statutes and would "
|
||||
"like to become a member."
|
||||
msgstr "Ja, ich bin mit den Statuen einverstanden und möchte Mitglied werden."
|
||||
|
||||
#: src/membership/models.py:167
|
||||
#: src/membership/models.py:170
|
||||
msgid "Birthday Date"
|
||||
msgstr "Geburtstag"
|
||||
|
||||
#: src/membership/models.py:169
|
||||
#: src/membership/models.py:174
|
||||
msgid "Telephone"
|
||||
msgstr "Telefon"
|
||||
|
||||
#: src/membership/models.py:175
|
||||
#: src/membership/models.py:180
|
||||
msgid "Address"
|
||||
msgstr "Adresse"
|
||||
|
||||
#: src/membership/models.py:181
|
||||
#: src/membership/models.py:186
|
||||
msgid "Postcode"
|
||||
msgstr "Postleitzahl"
|
||||
|
||||
#: src/membership/models.py:186
|
||||
#: src/membership/models.py:191
|
||||
msgid "Town/City"
|
||||
msgstr "Ort"
|
||||
|
||||
#: src/membership/models.py:194
|
||||
#: src/membership/models.py:199
|
||||
msgid "Paid until"
|
||||
msgstr "Bezahlt bis"
|
||||
|
||||
#: src/membership/models.py:200
|
||||
#: src/membership/models.py:205
|
||||
msgid "Confirmed"
|
||||
msgstr "Bestätigt"
|
||||
|
||||
#: src/membership/models.py:202
|
||||
#: src/membership/models.py:207
|
||||
msgid "This person has paid the membership fee."
|
||||
msgstr "Diese Person hat ihre Mitgliedschaft bezahlt"
|
||||
|
||||
#: src/membership/models.py:211
|
||||
#: src/membership/models.py:216
|
||||
msgid "Memberships"
|
||||
msgstr "Mitgliedschaften"
|
||||
|
||||
@@ -362,18 +366,7 @@ msgstr "Speichern"
|
||||
msgid "Registration"
|
||||
msgstr "Registrieren"
|
||||
|
||||
#: src/membership/templates/membership/register_form.html:16
|
||||
msgid "name"
|
||||
msgstr "Name"
|
||||
|
||||
#: src/membership/templates/membership/register_form.html:22
|
||||
#: src/membership/templates/registration/login.html:6
|
||||
#: src/membership/templates/registration/login.html:8
|
||||
#: src/membership/templates/registration/login.html:37
|
||||
msgid "login"
|
||||
msgstr "Anmelden"
|
||||
|
||||
#: src/membership/templates/membership/register_form.html:34
|
||||
#: src/membership/templates/membership/register_form.html:9
|
||||
msgid ""
|
||||
"After you've provided your account data, you'll receive\n"
|
||||
" an email asking you to verify your email address. You have to click on "
|
||||
@@ -387,6 +380,17 @@ msgstr ""
|
||||
"Bitte klicke auf den Link in dieser E-Mail zur Verifizierung, erst dann ist "
|
||||
"die Anmeldung möglich."
|
||||
|
||||
#: src/membership/templates/membership/register_form.html:20
|
||||
msgid "name"
|
||||
msgstr "Name"
|
||||
|
||||
#: src/membership/templates/membership/register_form.html:26
|
||||
#: src/membership/templates/registration/login.html:6
|
||||
#: src/membership/templates/registration/login.html:8
|
||||
#: src/membership/templates/registration/login.html:37
|
||||
msgid "login"
|
||||
msgstr "Anmelden"
|
||||
|
||||
#: src/membership/templates/membership/register_form.html:39
|
||||
msgid "reset"
|
||||
msgstr "Zurücksetzen"
|
||||
@@ -549,7 +553,7 @@ msgstr "Passwort zurücksetzen"
|
||||
msgid "Transmit"
|
||||
msgstr "Übermitteln"
|
||||
|
||||
#: src/membership/views.py:54
|
||||
#: src/membership/views.py:58
|
||||
msgid ""
|
||||
"Activation successful. You can now login anytime with you username "
|
||||
"and password."
|
||||
@@ -557,11 +561,11 @@ msgstr ""
|
||||
"Die Aktivierung war erfolgreich. Du kannst dich ab jetzt jederzeit mit "
|
||||
"deinem Benutzernamen und Passwort anmelden."
|
||||
|
||||
#: src/membership/views.py:74
|
||||
#: src/membership/views.py:78
|
||||
msgid "User Profile changed successfully"
|
||||
msgstr "Benutzerprofil erfolgreich geändert."
|
||||
|
||||
#: src/membership/views.py:88
|
||||
#: src/membership/views.py:92
|
||||
#, python-format
|
||||
msgid "No %(verbose_name)s found matching the query"
|
||||
msgstr "Kein %(verbose_name)s gefunden welche der Anfrage entspricht"
|
||||
|
||||
@@ -166,7 +166,10 @@ class Membership(AbstractUser):
|
||||
help_text=_('Yes, I confirm that I am in agreement with the statutes \
|
||||
and would like to become a member.')
|
||||
)
|
||||
birthday = models.DateField(_("Birthday Date"), blank=True, null=True)
|
||||
birthday = models.DateField(
|
||||
_("Birthday Date"),
|
||||
blank=True, null=True,
|
||||
)
|
||||
telephone = models.CharField(
|
||||
_("Telephone"),
|
||||
max_length=30,
|
||||
|
||||
@@ -6,12 +6,16 @@ from django.core.urlresolvers import reverse
|
||||
from django.http import Http404
|
||||
from django.utils.translation import ugettext as _
|
||||
from django.views import generic
|
||||
|
||||
from django.utils.decorators import method_decorator
|
||||
from csp.decorators import csp_update
|
||||
from mahjong_ranking.models import KyuDanRanking, SeasonRanking
|
||||
from utils import mixins
|
||||
from . import forms, models
|
||||
|
||||
|
||||
RECAPTCHA_CSP = {
|
||||
'SCRIPT_SRC': ['https://www.google.com/recaptcha/', 'https://www.gstatic.com/recaptcha/'],
|
||||
'FRAME_SRC': 'https://www.google.com/recaptcha/',
|
||||
'STYLE_SRC': "'unsafe-inline'"
|
||||
}
|
||||
class ActivateRegistration(generic.DetailView):
|
||||
"""
|
||||
Activates the Registration of an User and logs him in
|
||||
@@ -109,6 +113,10 @@ class RegisterForm(generic.FormView):
|
||||
success_url = '/membership/activation_sent/'
|
||||
template_name = 'membership/register_form.html'
|
||||
|
||||
@method_decorator(csp_update(**RECAPTCHA_CSP))
|
||||
def dispatch(self, *args, **kwargs):
|
||||
return super(RegisterForm, self).dispatch(*args, **kwargs)
|
||||
|
||||
def form_valid(self, form):
|
||||
form.save()
|
||||
return generic.FormView.form_valid(self, form)
|
||||
|
||||
Reference in New Issue
Block a user