members/excursion: add LJP category field to activity category

docu-new-group
Christian Merten 11 months ago
parent 79c20087e3
commit 5227efe17b
Signed by: christian.merten
GPG Key ID: D953D69721B948B3

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-01 21:11+0100\n"
"POT-Creation-Date: 2025-02-02 00:32+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -460,6 +460,40 @@ msgstr "Samstag"
msgid "Sunday"
msgstr "Sonntag"
#: members/models.py
msgid "winter"
msgstr "Winter"
#: members/models.py
msgid "ski mountaineering"
msgstr "Skibergsteigen"
#: members/models.py
msgid "climbing"
msgstr "Klettern"
#: members/models.py
msgid "mountaineering"
msgstr "Bergsteigen"
#: members/models.py
msgid "theory"
msgstr "Theorie"
#: members/models.py
msgid "others"
msgstr "Sonstiges"
#: members/models.py
msgid "LJP category"
msgstr "LJP Spielart"
#: members/models.py
msgid ""
"The official category for LJP applications associated with this activity."
msgstr ""
"Die offizielle Spielart für LJP Anträge mit dieser Aktivität."
#: members/models.py
msgid "Description"
msgstr "Beschreibung"

@ -0,0 +1,18 @@
# Generated by Django 4.0.1 on 2025-02-01 23:29
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('members', '0033_freizeit_approved_extra_youth_leader_count'),
]
operations = [
migrations.AddField(
model_name='activitycategory',
name='ljp_category',
field=models.CharField(choices=[('Winter', 'winter'), ('Skibergsteigen', 'ski mountaineering'), ('Klettern', 'climbing'), ('Bergsteigen', 'mountaineering'), ('Theorie', 'theory'), ('Sonstiges', 'others')], help_text='The official category for LJP applications associated with this activity.', max_length=20, verbose_name='LJP category'),
),
]

@ -55,7 +55,17 @@ class ActivityCategory(models.Model):
"""
Describes one kind of activity
"""
LJP_CATEGORIES = [('Winter', _('winter')),
('Skibergsteigen', _('ski mountaineering')),
('Klettern', _('climbing')),
('Bergsteigen', _('mountaineering')),
('Theorie', _('theory')),
('Sonstiges', _('others'))]
name = models.CharField(max_length=20, verbose_name=_('Name'))
ljp_category = models.CharField(choices=LJP_CATEGORIES,
verbose_name=_('LJP category'),
max_length=20,
help_text=_('The official category for LJP applications associated with this activity.'))
description = models.TextField(_('Description'))
def __str__(self):
@ -1363,6 +1373,13 @@ class Freizeit(CommonModel):
base['Textfeld 58'] = base['Textfeld 62']
return base
def get_ljp_activity_category(self):
"""
The official LJP activity category associated with this excursion. This is deduced
from the `activity` field.
"""
return ", ".join([a.ljp_category for a in self.activity.all()])
@staticmethod
def filter_queryset_by_permissions(member, queryset=None):
if queryset is None:

Loading…
Cancel
Save