auth: rename User and Group, remove fields

pull/73/head
Christian Merten 1 year ago
parent 88e2c6ff0d
commit 3c94d07bae
Signed by: christian.merten
GPG Key ID: D953D69721B948B3

@ -38,6 +38,7 @@ USE_X_FORWARDED_HOST = True
# Application definition # Application definition
INSTALLED_APPS = [ INSTALLED_APPS = [
'logindata.apps.LoginDataConfig',
'contrib.apps.ContribConfig', 'contrib.apps.ContribConfig',
'startpage.apps.StartpageConfig', 'startpage.apps.StartpageConfig',
'material.apps.MaterialConfig', 'material.apps.MaterialConfig',

@ -6,8 +6,8 @@ JET_CHANGE_FORM_SIBLING_LINKS = False
JET_SIDE_MENU_ITEMS = [ JET_SIDE_MENU_ITEMS = [
{'app_label': 'auth', 'permissions': ['auth'], 'items': [ {'app_label': 'auth', 'permissions': ['auth'], 'items': [
{'name': 'group', 'permissions': ['auth.group'] }, {'name': 'authgroup', 'permissions': ['auth.group'] },
{'name': 'user', 'permissions': ['auth.user']}, {'name': 'logindatum', 'permissions': ['auth.user']},
]}, ]},
{'app_label': 'django_celery_beat', 'permissions': ['django_celery_beat'], 'items': [ {'app_label': 'django_celery_beat', 'permissions': ['django_celery_beat'], 'items': [
{'name': 'crontabschedule'}, {'name': 'crontabschedule'},

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-11-17 14:17+0100\n" "POT-Creation-Date: 2024-11-19 01:19+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -27,6 +27,30 @@ msgstr "Du hast nicht die notwendigen Berechtigungen um %(name)s zu sehen."
msgid "Startpage" msgid "Startpage"
msgstr "Startseite" msgstr "Startseite"
#: logindata/admin.py:25
msgid "Permissions"
msgstr "Berechtigungen"
#: logindata/admin.py:36
msgid "Important dates"
msgstr "Wichtigen Daten"
#: logindata/models.py:10
msgid "Permission group"
msgstr "Berechtigungsgruppe"
#: logindata/models.py:11
msgid "Permission groups"
msgstr "Berechtigungsgruppen"
#: logindata/models.py:18
msgid "Login Datum"
msgstr "Zugangsdaten"
#: logindata/models.py:19
msgid "Login Data"
msgstr "Zugangsdaten"
#: templates/admin/finance/statementconfirmed/change_form_object_tools.html:8 #: templates/admin/finance/statementconfirmed/change_form_object_tools.html:8
msgid "Unconfirm" msgid "Unconfirm"
msgstr "Bestätigung zurücknehmen" msgstr "Bestätigung zurücknehmen"

@ -0,0 +1,51 @@
from django.utils.translation import gettext_lazy as _
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin, GroupAdmin as BaseAuthGroupAdmin
from django.contrib.auth.models import User as BaseUser, Group as BaseAuthGroup
from .models import AuthGroup, LoginDatum
from members.models import Member
# Register your models here.
class AuthGroupAdmin(BaseAuthGroupAdmin):
pass
class UserInline(admin.StackedInline):
model = Member
can_delete = False
verbose_name_plural = "member"
class LoginDatumAdmin(BaseUserAdmin):
list_display = ('username', 'is_superuser')
#inlines = [UserInline]
fieldsets = (
(None, {"fields": ("username", "password")}),
(
_("Permissions"),
{
"fields": (
"is_active",
"is_staff",
"is_superuser",
"groups",
"user_permissions",
),
},
),
(_("Important dates"), {"fields": ("last_login", "date_joined")}),
)
add_fieldsets = (
(
None,
{
"classes": ("wide",),
"fields": ("username", "usable_password", "password1", "password2"),
},
),
)
admin.site.unregister(BaseUser)
admin.site.unregister(BaseAuthGroup)
admin.site.register(LoginDatum, LoginDatumAdmin)
admin.site.register(AuthGroup, AuthGroupAdmin)

@ -0,0 +1,6 @@
from django.apps import AppConfig
class LoginDataConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'logindata'

@ -0,0 +1,20 @@
from django.utils.translation import gettext_lazy as _
from django.db import models
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin, GroupAdmin as BaseAuthGroupAdmin
from django.contrib.auth.models import User as BaseUser, Group as BaseAuthGroup
class AuthGroup(BaseAuthGroup):
class Meta:
proxy = True
verbose_name = _('Permission group')
verbose_name_plural = _('Permission groups')
app_label = "auth"
class LoginDatum(BaseUser):
class Meta:
proxy = True
verbose_name = _('Login Datum')
verbose_name_plural = _('Login Data')
app_label = "auth"

@ -0,0 +1,3 @@
from django.test import TestCase
# Create your tests here.

@ -0,0 +1,3 @@
from django.shortcuts import render
# Create your views here.

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-11-18 21:17+0100\n" "POT-Creation-Date: 2024-11-19 01:19+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -18,182 +18,182 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: members/admin.py:122 members/models.py:369 #: members/admin.py:124 members/models.py:370
msgid "Registration complete" msgid "Registration complete"
msgstr "Anmeldung vollständig" msgstr "Anmeldung vollständig"
#: members/admin.py:128 #: members/admin.py:130
msgid "True" msgid "True"
msgstr "Ja" msgstr "Ja"
#: members/admin.py:129 #: members/admin.py:131
msgid "False" msgid "False"
msgstr "Nein" msgstr "Nein"
#: members/admin.py:130 #: members/admin.py:132
msgid "All" msgid "All"
msgstr "Alle" msgstr "Alle"
#: members/admin.py:179 members/admin.py:316 #: members/admin.py:181 members/admin.py:318
msgid "Contact information" msgid "Contact information"
msgstr "Kontaktinformationen" msgstr "Kontaktinformationen"
#: members/admin.py:184 members/admin.py:321 #: members/admin.py:186 members/admin.py:323
msgid "Skills" msgid "Skills"
msgstr "Fähigkeiten" msgstr "Fähigkeiten"
#: members/admin.py:189 members/admin.py:326 #: members/admin.py:191 members/admin.py:328
msgid "Others" msgid "Others"
msgstr "Sonstiges" msgstr "Sonstiges"
#: members/admin.py:195 members/admin.py:331 #: members/admin.py:197 members/admin.py:333
msgid "Organizational" msgid "Organizational"
msgstr "Organisatorisches" msgstr "Organisatorisches"
#: members/admin.py:258 #: members/admin.py:260
msgid "Compose new mail to selected members" msgid "Compose new mail to selected members"
msgstr "Neue Nachricht an ausgewählte Teilnehmer verfassen" msgstr "Neue Nachricht an ausgewählte Teilnehmer verfassen"
#: members/admin.py:264 #: members/admin.py:266
msgid "Echo required" msgid "Echo required"
msgstr "Rückmeldung erforderlich" msgstr "Rückmeldung erforderlich"
#: members/admin.py:266 #: members/admin.py:268
msgid "Successfully requested echo from selected members." msgid "Successfully requested echo from selected members."
msgstr "" msgstr ""
"Rückmeldungsaufforderung erfolgreich an ausgewählte Teilnehmer verschickt." "Rückmeldungsaufforderung erfolgreich an ausgewählte Teilnehmer verschickt."
#: members/admin.py:267 #: members/admin.py:269
msgid "Request echo from selected members" msgid "Request echo from selected members"
msgstr "Rückmeldungsaufforderung an ausgewählte Teilnehmer verschicken" msgstr "Rückmeldungsaufforderung an ausgewählte Teilnehmer verschicken"
#: members/admin.py:284 #: members/admin.py:286
msgid "activity" msgid "activity"
msgstr "Aktivität" msgstr "Aktivität"
#: members/admin.py:294 members/models.py:53 members/models.py:1363 #: members/admin.py:296 members/models.py:53 members/models.py:1364
msgid "Name" msgid "Name"
msgstr "Name" msgstr "Name"
#: members/admin.py:365 #: members/admin.py:367
msgid "Successfully requested mail confirmation from selected registrations." msgid "Successfully requested mail confirmation from selected registrations."
msgstr "Aufforderung zur Bestätigung der Email Adresse versendet." msgstr "Aufforderung zur Bestätigung der Email Adresse versendet."
#: members/admin.py:366 #: members/admin.py:368
msgid "Request mail confirmation from selected registrations" msgid "Request mail confirmation from selected registrations"
msgstr "Aufforderung zur Bestätigung der Email Adresse versenden" msgstr "Aufforderung zur Bestätigung der Email Adresse versenden"
#: members/admin.py:373 members/admin.py:407 #: members/admin.py:375 members/admin.py:409
#, python-format #, python-format
msgid "Successfully confirmed %(name)s." msgid "Successfully confirmed %(name)s."
msgstr "Registrierung von %(name)s erfolgreich bestätigt." msgstr "Registrierung von %(name)s erfolgreich bestätigt."
#: members/admin.py:377 members/admin.py:410 #: members/admin.py:379 members/admin.py:412
#, python-format #, python-format
msgid "Can't confirm. %(name)s has unconfirmed email addresses." msgid "Can't confirm. %(name)s has unconfirmed email addresses."
msgstr "Bestätigung nicht möglich. %(name)s hat unbestätigte Emailadressen." msgstr "Bestätigung nicht möglich. %(name)s hat unbestätigte Emailadressen."
#: members/admin.py:382 #: members/admin.py:384
msgid "Successfully confirmed multiple registrations." msgid "Successfully confirmed multiple registrations."
msgstr "Erfolgreich mehrere Registrierungen bestätigt." msgstr "Erfolgreich mehrere Registrierungen bestätigt."
#: members/admin.py:384 #: members/admin.py:386
msgid "" msgid ""
"Failed to confirm some registrations because of unconfirmed email addresses." "Failed to confirm some registrations because of unconfirmed email addresses."
msgstr "" msgstr ""
"Einige Bestätigungen fehlgeschlagen, weil Emailadressen noch nicht bestätigt " "Einige Bestätigungen fehlgeschlagen, weil Emailadressen noch nicht bestätigt "
"sind." "sind."
#: members/admin.py:385 #: members/admin.py:387
msgid "Confirm selected registrations" msgid "Confirm selected registrations"
msgstr "Ausgewählte Registrierungen bestätigen" msgstr "Ausgewählte Registrierungen bestätigen"
#: members/admin.py:401 #: members/admin.py:403
#, python-format #, python-format
msgid "Successfully demoted %(name)s to waiter." msgid "Successfully demoted %(name)s to waiter."
msgstr "%(name)s zurück auf die Warteliste gesetzt." msgstr "%(name)s zurück auf die Warteliste gesetzt."
#: members/admin.py:402 #: members/admin.py:404
msgid "Demote selected registrations to waiters." msgid "Demote selected registrations to waiters."
msgstr "Ausgewählte Registrierungen zurück auf die Warteliste setzen." msgstr "Ausgewählte Registrierungen zurück auf die Warteliste setzen."
#: members/admin.py:417 members/models.py:376 members/models.py:702 #: members/admin.py:419 members/models.py:377 members/models.py:703
#: members/models.py:1108 #: members/models.py:1109
msgid "Group" msgid "Group"
msgstr "Gruppe" msgstr "Gruppe"
#: members/admin.py:451 #: members/admin.py:453
#, python-format #, python-format
msgid "Successfully asked %(name)s to confirm their waiting status." msgid "Successfully asked %(name)s to confirm their waiting status."
msgstr "Erfolgreich %(name)s aufgefordert den Wartelistenplatz zu bestätigen." msgstr "Erfolgreich %(name)s aufgefordert den Wartelistenplatz zu bestätigen."
#: members/admin.py:452 #: members/admin.py:454
msgid "Ask selected waiters to confirm their waiting status" msgid "Ask selected waiters to confirm their waiting status"
msgstr "Wartende auffordern den Wartelistenplatz zu bestätigen" msgstr "Wartende auffordern den Wartelistenplatz zu bestätigen"
#: members/admin.py:461 members/admin.py:517 #: members/admin.py:463 members/admin.py:519
msgid "" msgid ""
"An error occurred while trying to invite said members. Please try again." "An error occurred while trying to invite said members. Please try again."
msgstr "" msgstr ""
"Beim Einladen dieser Personen ist ein Fehler aufgetreten. Bitte versuche es " "Beim Einladen dieser Personen ist ein Fehler aufgetreten. Bitte versuche es "
"nochmal. " "nochmal. "
#: members/admin.py:469 members/admin.py:524 #: members/admin.py:471 members/admin.py:526
#, python-format #, python-format
msgid "Successfully invited %(name)s to %(group)s." msgid "Successfully invited %(name)s to %(group)s."
msgstr "Erfolgreich %(name)s zu Gruppe %(group)s eingeladen." msgstr "Erfolgreich %(name)s zu Gruppe %(group)s eingeladen."
#: members/admin.py:473 members/admin.py:529 #: members/admin.py:475 members/admin.py:531
msgid "Select group for invitation" msgid "Select group for invitation"
msgstr "Wähle Gruppe für Einladung aus" msgstr "Wähle Gruppe für Einladung aus"
#: members/admin.py:480 #: members/admin.py:482
msgid "Offer waiter a place in a group." msgid "Offer waiter a place in a group."
msgstr "Personen auf der Warteliste einen Gruppenplatz anbieten." msgstr "Personen auf der Warteliste einen Gruppenplatz anbieten."
#: members/admin.py:570 #: members/admin.py:572
msgid "Difficulty" msgid "Difficulty"
msgstr "Schwierigkeit" msgstr "Schwierigkeit"
#: members/admin.py:573 #: members/admin.py:575
msgid "Tour type" msgid "Tour type"
msgstr "Art der Tour" msgstr "Art der Tour"
#: members/admin.py:576 members/models.py:918 #: members/admin.py:578 members/models.py:919
msgid "Means of transportation" msgid "Means of transportation"
msgstr "Verkehrsmittel" msgstr "Verkehrsmittel"
#: members/admin.py:671 #: members/admin.py:673
#, python-format #, python-format
msgid "You are not allowed to view all members on note list %(name)s." msgid "You are not allowed to view all members on note list %(name)s."
msgstr "" msgstr ""
"Du hast nicht die nötigen Rechte um alle Teilnehmer:innen der Notizliste " "Du hast nicht die nötigen Rechte um alle Teilnehmer:innen der Notizliste "
"%(name)s anzusehen." "%(name)s anzusehen."
#: members/admin.py:681 #: members/admin.py:683
msgid "Generate PDF summary" msgid "Generate PDF summary"
msgstr "Übersicht erstellen" msgstr "Übersicht erstellen"
#: members/admin.py:719 #: members/admin.py:721
#, python-format #, python-format
msgid "You are not allowed to view all members on excursion %(name)s." msgid "You are not allowed to view all members on excursion %(name)s."
msgstr "" msgstr ""
"Du hast nicht die nötigen Rechte um alle Teilnehmer:innen der Ausfahrt " "Du hast nicht die nötigen Rechte um alle Teilnehmer:innen der Ausfahrt "
"%(name)s anzusehen." "%(name)s anzusehen."
#: members/admin.py:729 #: members/admin.py:731
msgid "Generate crisis intervention list" msgid "Generate crisis intervention list"
msgstr "Kriseninterventionsliste erstellen" msgstr "Kriseninterventionsliste erstellen"
#: members/admin.py:739 #: members/admin.py:741
msgid "Generate overview" msgid "Generate overview"
msgstr "Hinweise für Jugendleiter erstellen" msgstr "Hinweise für Jugendleiter erstellen"
#: members/admin.py:749 #: members/admin.py:751
msgid "Generate seminar report" msgid "Generate seminar report"
msgstr "Seminarbericht erstellen" msgstr "Seminarbericht erstellen"
#: members/admin.py:763 #: members/admin.py:765
msgid "Generate SJR application" msgid "Generate SJR application"
msgstr "SJR Antrag erstellen" msgstr "SJR Antrag erstellen"
@ -229,11 +229,11 @@ msgstr "Samstag"
msgid "Sunday" msgid "Sunday"
msgstr "Sonntag" msgstr "Sonntag"
#: members/models.py:54 members/models.py:904 #: members/models.py:54 members/models.py:905
msgid "Description" msgid "Description"
msgstr "Beschreibung" msgstr "Beschreibung"
#: members/models.py:60 members/models.py:896 #: members/models.py:60 members/models.py:897
#: members/templates/members/change_member.html:18 #: members/templates/members/change_member.html:18
msgid "Activity" msgid "Activity"
msgstr "Aktivität" msgstr "Aktivität"
@ -266,7 +266,7 @@ msgstr "Bis Jahrgang"
msgid "youth leaders" msgid "youth leaders"
msgstr "Jugendleiter" msgstr "Jugendleiter"
#: members/models.py:77 members/models.py:1190 #: members/models.py:77 members/models.py:1191
msgid "Starting time" msgid "Starting time"
msgstr "Zeitpunkt" msgstr "Zeitpunkt"
@ -426,338 +426,342 @@ msgstr "Rückgemeldet"
msgid "Confirmed" msgid "Confirmed"
msgstr "Bestätigt" msgstr "Bestätigt"
#: members/models.py:305 #: members/models.py:277
msgid "Login data"
msgstr "Zugangsdaten"
#: members/models.py:306
msgid "Good conduct certificate valid" msgid "Good conduct certificate valid"
msgstr "Führungszeugnis gültig" msgstr "Führungszeugnis gültig"
#: members/models.py:379 #: members/models.py:380
msgid "member" msgid "member"
msgstr "Teilnehmer" msgstr "Teilnehmer"
#: members/models.py:380 #: members/models.py:381
msgid "members" msgid "members"
msgstr "Teilnehmer" msgstr "Teilnehmer"
#: members/models.py:452 #: members/models.py:453
#, python-format #, python-format
msgid "New unconfirmed registration for group %(group)s" msgid "New unconfirmed registration for group %(group)s"
msgstr "Neue unbestätigte Registrierung für Gruppe %(group)s" msgstr "Neue unbestätigte Registrierung für Gruppe %(group)s"
#: members/models.py:659 members/models.py:852 members/models.py:863 #: members/models.py:660 members/models.py:853 members/models.py:864
#: members/models.py:1139 members/models.py:1146 #: members/models.py:1140 members/models.py:1147
msgid "Member" msgid "Member"
msgstr "Teilnehmer" msgstr "Teilnehmer"
#: members/models.py:665 #: members/models.py:666
msgid "Emergency contact" msgid "Emergency contact"
msgstr "Notfallkontakt" msgstr "Notfallkontakt"
#: members/models.py:666 #: members/models.py:667
msgid "Emergency contacts" msgid "Emergency contacts"
msgstr "Notfallkontakte" msgstr "Notfallkontakte"
#: members/models.py:686 #: members/models.py:687
msgid "Unconfirmed registration" msgid "Unconfirmed registration"
msgstr "Unbestätigte Registrierung" msgstr "Unbestätigte Registrierung"
#: members/models.py:687 #: members/models.py:688
msgid "Unconfirmed registrations" msgid "Unconfirmed registrations"
msgstr "Unbestätigte Registrierungen" msgstr "Unbestätigte Registrierungen"
#: members/models.py:701 members/models.py:746 #: members/models.py:702 members/models.py:747
msgid "Waiter" msgid "Waiter"
msgstr "Wartende Person" msgstr "Wartende Person"
#: members/models.py:703 #: members/models.py:704
msgid "Invitation date" msgid "Invitation date"
msgstr "Einladungsdatum" msgstr "Einladungsdatum"
#: members/models.py:704 members/templates/members/reject_success.html:6 #: members/models.py:705 members/templates/members/reject_success.html:6
#: members/templates/members/reject_success.html:11 #: members/templates/members/reject_success.html:11
msgid "Invitation rejected" msgid "Invitation rejected"
msgstr "Einladung abgelehnt" msgstr "Einladung abgelehnt"
#: members/models.py:708 #: members/models.py:709
msgid "Invitation to group" msgid "Invitation to group"
msgstr "Gruppeneinladung" msgstr "Gruppeneinladung"
#: members/models.py:709 #: members/models.py:710
msgid "Invitations to groups" msgid "Invitations to groups"
msgstr "Gruppeneinladungen" msgstr "Gruppeneinladungen"
#: members/models.py:716 #: members/models.py:717
msgid "Rejected" msgid "Rejected"
msgstr "Abgelehnt" msgstr "Abgelehnt"
#: members/models.py:718 #: members/models.py:719
msgid "Expired" msgid "Expired"
msgstr "Abgelaufen" msgstr "Abgelaufen"
#: members/models.py:720 #: members/models.py:721
msgid "Undecided" msgid "Undecided"
msgstr "Ausstehend" msgstr "Ausstehend"
#: members/models.py:721 #: members/models.py:722
msgid "Status" msgid "Status"
msgstr "Status" msgstr "Status"
#: members/models.py:732 #: members/models.py:733
msgid "Do you want to tell us something else?" msgid "Do you want to tell us something else?"
msgstr "Möchtest du uns noch etwas mitteilen?" msgstr "Möchtest du uns noch etwas mitteilen?"
#: members/models.py:733 #: members/models.py:734
msgid "application date" msgid "application date"
msgstr "Bewerbungsdatum" msgstr "Bewerbungsdatum"
#: members/models.py:735 #: members/models.py:736
msgid "Last wait confirmation" msgid "Last wait confirmation"
msgstr "Letzte Wartebestätigung" msgstr "Letzte Wartebestätigung"
#: members/models.py:739 #: members/models.py:740
msgid "Last reminder" msgid "Last reminder"
msgstr "Letzte Erinnerung" msgstr "Letzte Erinnerung"
#: members/models.py:740 #: members/models.py:741
msgid "Missed reminders" msgid "Missed reminders"
msgstr "Verpasste Erinnerungen" msgstr "Verpasste Erinnerungen"
#: members/models.py:747 #: members/models.py:748
msgid "Waiters" msgid "Waiters"
msgstr "Warteliste" msgstr "Warteliste"
#: members/models.py:771 #: members/models.py:772
msgid "Waiting status confirmed" msgid "Waiting status confirmed"
msgstr "Wartelistenplatz bestätigt" msgstr "Wartelistenplatz bestätigt"
#: members/models.py:778 #: members/models.py:779
msgid "Waiting confirmation needed" msgid "Waiting confirmation needed"
msgstr "Wartelistenplatzbestätigung erforderlich" msgstr "Wartelistenplatzbestätigung erforderlich"
#: members/models.py:831 #: members/models.py:832
msgid "Invitation to trial group meeting" msgid "Invitation to trial group meeting"
msgstr "Einladung zu Schnupperstunde" msgstr "Einladung zu Schnupperstunde"
#: members/models.py:843 #: members/models.py:844
msgid "Unregistered from waiting list" msgid "Unregistered from waiting list"
msgstr "Von der Warteliste abgemeldet" msgstr "Von der Warteliste abgemeldet"
#: members/models.py:857 #: members/models.py:858
msgid "Comment" msgid "Comment"
msgstr "Kommentar" msgstr "Kommentar"
#: members/models.py:864 members/models.py:1147 #: members/models.py:865 members/models.py:1148
msgid "Members" msgid "Members"
msgstr "Teilnehmer" msgstr "Teilnehmer"
#: members/models.py:898 #: members/models.py:899
msgid "Place" msgid "Place"
msgstr "Stützpunkt / Ort" msgstr "Stützpunkt / Ort"
#: members/models.py:899 #: members/models.py:900
msgid "Destination (optional)" msgid "Destination (optional)"
msgstr "ggf. Ziel" msgstr "ggf. Ziel"
#: members/models.py:901 #: members/models.py:902
msgid "e.g. a peak" msgid "e.g. a peak"
msgstr "z.B. ein Gipfel" msgstr "z.B. ein Gipfel"
#: members/models.py:902 #: members/models.py:903
msgid "Begin" msgid "Begin"
msgstr "Anfang" msgstr "Anfang"
#: members/models.py:903 #: members/models.py:904
msgid "End (optional)" msgid "End (optional)"
msgstr "Ende" msgstr "Ende"
#: members/models.py:906 #: members/models.py:907
msgid "Groups" msgid "Groups"
msgstr "Gruppen" msgstr "Gruppen"
#: members/models.py:919 #: members/models.py:920
msgid "Kilometers traveled" msgid "Kilometers traveled"
msgstr "Fahrstrecke in Kilometer" msgstr "Fahrstrecke in Kilometer"
#: members/models.py:922 #: members/models.py:923
msgid "Categories" msgid "Categories"
msgstr "Kategorien" msgstr "Kategorien"
#: members/models.py:923 #: members/models.py:924
msgid "easy" msgid "easy"
msgstr "leicht" msgstr "leicht"
#: members/models.py:923 #: members/models.py:924
msgid "medium" msgid "medium"
msgstr "mittel" msgstr "mittel"
#: members/models.py:923 #: members/models.py:924
msgid "hard" msgid "hard"
msgstr "schwer" msgstr "schwer"
#: members/models.py:933 members/models.py:1170 #: members/models.py:934 members/models.py:1171
msgid "Excursion" msgid "Excursion"
msgstr "Ausfahrt" msgstr "Ausfahrt"
#: members/models.py:934 #: members/models.py:935
msgid "Excursions" msgid "Excursions"
msgstr "Ausfahrten" msgstr "Ausfahrten"
#: members/models.py:1085 members/models.py:1161 members/models.py:1377 #: members/models.py:1086 members/models.py:1162 members/models.py:1378
msgid "Title" msgid "Title"
msgstr "Titel" msgstr "Titel"
#: members/models.py:1086 members/models.py:1104 members/models.py:1378 #: members/models.py:1087 members/models.py:1105 members/models.py:1379
msgid "Date" msgid "Date"
msgstr "Datum" msgstr "Datum"
#: members/models.py:1105 #: members/models.py:1106
msgid "Location" msgid "Location"
msgstr "Ort" msgstr "Ort"
#: members/models.py:1106 #: members/models.py:1107
msgid "Topic" msgid "Topic"
msgstr "Thema" msgstr "Thema"
#: members/models.py:1130 #: members/models.py:1131
msgid "Jugendleiter" msgid "Jugendleiter"
msgstr "Jugendleiter" msgstr "Jugendleiter"
#: members/models.py:1133 #: members/models.py:1134
msgid "Klettertreff" msgid "Klettertreff"
msgstr "Klettertreff" msgstr "Klettertreff"
#: members/models.py:1134 #: members/models.py:1135
msgid "Klettertreffs" msgid "Klettertreffs"
msgstr "Klettertreffs" msgstr "Klettertreffs"
#: members/models.py:1152 #: members/models.py:1153
msgid "Password" msgid "Password"
msgstr "Passwort" msgstr "Passwort"
#: members/models.py:1155 #: members/models.py:1156
msgid "registration password" msgid "registration password"
msgstr "Registrierungspassort" msgstr "Registrierungspassort"
#: members/models.py:1156 #: members/models.py:1157
msgid "registration passwords" msgid "registration passwords"
msgstr "Registrierungspasswörter" msgstr "Registrierungspasswörter"
#: members/models.py:1163 #: members/models.py:1164
msgid "Alpinistic goals" msgid "Alpinistic goals"
msgstr "Alpintechnische Ziele" msgstr "Alpintechnische Ziele"
#: members/models.py:1164 #: members/models.py:1165
msgid "Pedagogic goals" msgid "Pedagogic goals"
msgstr "Pädagogische Ziele" msgstr "Pädagogische Ziele"
#: members/models.py:1165 #: members/models.py:1166
msgid "Content and methods" msgid "Content and methods"
msgstr "Inhalte und Methoden" msgstr "Inhalte und Methoden"
#: members/models.py:1166 #: members/models.py:1167
msgid "Evaluation" msgid "Evaluation"
msgstr "Wertung" msgstr "Wertung"
#: members/models.py:1167 #: members/models.py:1168
msgid "Experiences and possible improvements" msgid "Experiences and possible improvements"
msgstr "Erfahrungen und Verbesserungsvorschläge" msgstr "Erfahrungen und Verbesserungsvorschläge"
#: members/models.py:1176 members/models.py:1197 #: members/models.py:1177 members/models.py:1198
msgid "LJP Proposal" msgid "LJP Proposal"
msgstr "Seminarbericht" msgstr "Seminarbericht"
#: members/models.py:1177 #: members/models.py:1178
msgid "LJP Proposals" msgid "LJP Proposals"
msgstr "Seminarberichte" msgstr "Seminarberichte"
#: members/models.py:1191 #: members/models.py:1192
msgid "Duration in hours" msgid "Duration in hours"
msgstr "Dauer in Stunden" msgstr "Dauer in Stunden"
#: members/models.py:1194 #: members/models.py:1195
msgid "Activity and method" msgid "Activity and method"
msgstr "Art der Aktion inkl. Methode" msgstr "Art der Aktion inkl. Methode"
#: members/models.py:1202 #: members/models.py:1203
msgid "Intervention" msgid "Intervention"
msgstr "Aktion" msgstr "Aktion"
#: members/models.py:1203 #: members/models.py:1204
msgid "Interventions" msgid "Interventions"
msgstr "Aktionen" msgstr "Aktionen"
#: members/models.py:1305 members/models.py:1335 #: members/models.py:1306 members/models.py:1336
msgid "May list members" msgid "May list members"
msgstr "Darf folgende Teilnehmer:innen listen" msgstr "Darf folgende Teilnehmer:innen listen"
#: members/models.py:1307 members/models.py:1337 #: members/models.py:1308 members/models.py:1338
msgid "May view members" msgid "May view members"
msgstr "Darf folgende Teilnehmer:innen anzeigen" msgstr "Darf folgende Teilnehmer:innen anzeigen"
#: members/models.py:1309 members/models.py:1339 #: members/models.py:1310 members/models.py:1340
msgid "May change members" msgid "May change members"
msgstr "Darf folgende Teilnehmer:innen ändern" msgstr "Darf folgende Teilnehmer:innen ändern"
#: members/models.py:1311 members/models.py:1341 #: members/models.py:1312 members/models.py:1342
msgid "May delete members" msgid "May delete members"
msgstr "Darf folgende Teilnehmer:innen löschen" msgstr "Darf folgende Teilnehmer:innen löschen"
#: members/models.py:1315 members/models.py:1345 #: members/models.py:1316 members/models.py:1346
msgid "May list members of groups" msgid "May list members of groups"
msgstr "Darf Teilnehmer:innen folgender Gruppen listen" msgstr "Darf Teilnehmer:innen folgender Gruppen listen"
#: members/models.py:1317 members/models.py:1347 #: members/models.py:1318 members/models.py:1348
msgid "May view members of groups" msgid "May view members of groups"
msgstr "Darf Teilnehmer:innen folgender Gruppen anzeigen" msgstr "Darf Teilnehmer:innen folgender Gruppen anzeigen"
#: members/models.py:1319 members/models.py:1349 #: members/models.py:1320 members/models.py:1350
msgid "May change members of groups" msgid "May change members of groups"
msgstr "Darf Teilnehmer:innen folgender Gruppen ändern" msgstr "Darf Teilnehmer:innen folgender Gruppen ändern"
#: members/models.py:1321 members/models.py:1351 #: members/models.py:1322 members/models.py:1352
msgid "May delete members of groups" msgid "May delete members of groups"
msgstr "Darf Teilnehmer:innen folgender Gruppen löschen" msgstr "Darf Teilnehmer:innen folgender Gruppen löschen"
#: members/models.py:1324 members/models.py:1325 members/models.py:1328 #: members/models.py:1325 members/models.py:1326 members/models.py:1329
msgid "Permissions" msgid "Permissions"
msgstr "Berechtigungen" msgstr "Berechtigungen"
#: members/models.py:1354 members/models.py:1355 members/models.py:1358 #: members/models.py:1355 members/models.py:1356 members/models.py:1359
msgid "Group permissions" msgid "Group permissions"
msgstr "Gruppenberechtigungen" msgstr "Gruppenberechtigungen"
#: members/models.py:1364 #: members/models.py:1365
msgid "Permission needed" msgid "Permission needed"
msgstr "Freigabe erforderlich" msgstr "Freigabe erforderlich"
#: members/models.py:1367 #: members/models.py:1368
msgid "Training category" msgid "Training category"
msgstr "Fortbildungstyp" msgstr "Fortbildungstyp"
#: members/models.py:1368 #: members/models.py:1369
msgid "Training categories" msgid "Training categories"
msgstr "Fortbildungstypen" msgstr "Fortbildungstypen"
#: members/models.py:1379 #: members/models.py:1380
msgid "Category" msgid "Category"
msgstr "Kategorien" msgstr "Kategorien"
#: members/models.py:1380 #: members/models.py:1381
msgid "Comments" msgid "Comments"
msgstr "Kommentar" msgstr "Kommentar"
#: members/models.py:1381 #: members/models.py:1382
msgid "Participated" msgid "Participated"
msgstr "Teilgenommmen" msgstr "Teilgenommmen"
#: members/models.py:1382 #: members/models.py:1383
msgid "Passed" msgid "Passed"
msgstr "Bestanden" msgstr "Bestanden"
#: members/models.py:1385 #: members/models.py:1386
msgid "Training" msgid "Training"
msgstr "Fortbildung" msgstr "Fortbildung"
#: members/models.py:1386 #: members/models.py:1387
msgid "Trainings" msgid "Trainings"
msgstr "Fortbildungen" msgstr "Fortbildungen"

@ -0,0 +1,21 @@
# Generated by Django 4.0.1 on 2024-11-19 00:22
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('members', '0022_adapt_fields'),
]
operations = [
migrations.AlterField(
model_name='member',
name='user',
field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='Login data'),
),
]

@ -273,7 +273,8 @@ class Member(Person):
echo_expire = models.DateTimeField(default=timezone.now) echo_expire = models.DateTimeField(default=timezone.now)
echoed = models.BooleanField(default=True, verbose_name=_('Echoed')) echoed = models.BooleanField(default=True, verbose_name=_('Echoed'))
confirmed = models.BooleanField(default=True, verbose_name=_('Confirmed')) confirmed = models.BooleanField(default=True, verbose_name=_('Confirmed'))
user = models.OneToOneField(User, blank=True, null=True, on_delete=models.SET_NULL) user = models.OneToOneField(User, blank=True, null=True, on_delete=models.SET_NULL,
verbose_name=_('Login data'))
objects = MemberManager() objects = MemberManager()

Loading…
Cancel
Save