All checks were successful
Run tests / Execute tox to run the test suite (push) Successful in 3m17s
307 lines
10 KiB
Python
307 lines
10 KiB
Python
# -*- coding: utf-8 -*-
|
|
from django.utils.translation import ugettext_lazy as _
|
|
from dav_events.config import FieldInitial
|
|
|
|
# E-Mails
|
|
ENABLE_EMAIL_ON_STATUS_UPDATE = False
|
|
ENABLE_EMAIL_ON_UPDATE = False
|
|
|
|
# Authorization Roles / Groups
|
|
GROUPS_MANAGER_SUPER = ['Tourenreferenten']
|
|
GROUPS_MANAGER_W = ['Bereichsleiter_Wandern']
|
|
GROUPS_MANAGER_S = ['Bereichsleiter_Ski']
|
|
GROUPS_MANAGER_M = ['Bereichsleiter_MTB']
|
|
GROUPS_MANAGER_K = ['Bereichsleiter_Klettern']
|
|
GROUPS_MANAGER_B = ['Bereichsleiter_Bergsteigen']
|
|
GROUPS_PUBLISHER_PRINT = ['Redaktion_KA-Alpin']
|
|
GROUPS_PUBLISHER_WEB = ['Redaktion_Joomla']
|
|
GROUPS_PUBLISHER_FACEBOOK = ['Redaktion_Facebook']
|
|
GROUPS_OFFICE = ['Geschaeftsstelle']
|
|
|
|
# ChainedForm and sub classes
|
|
FORM_INITIALS = {
|
|
'ModeForm': {
|
|
'mode': FieldInitial('joint'),
|
|
'sport': FieldInitial('W'),
|
|
'level': FieldInitial('beginner'),
|
|
},
|
|
'LocationForm': {
|
|
'country': FieldInitial(
|
|
'sport==B',
|
|
'FR',
|
|
'sport==S,overnight==True',
|
|
'AT',
|
|
'sport==W,overnight==True',
|
|
'AT',
|
|
'',
|
|
'DE',
|
|
),
|
|
'terrain': FieldInitial(
|
|
'sport==B',
|
|
'alpine',
|
|
'sport==K',
|
|
'crag',
|
|
'sport==S,overnight==True',
|
|
'alpine',
|
|
'sport==W,overnight==True',
|
|
'alpine',
|
|
'',
|
|
'submountains',
|
|
),
|
|
},
|
|
'JourneyForm': {
|
|
'meeting_point': FieldInitial(
|
|
'transport==public',
|
|
'hbf',
|
|
),
|
|
},
|
|
'AccommodationForm': {
|
|
'accommodation': FieldInitial('terrain==alpine', 'hut'),
|
|
'meals': FieldInitial('NONE'),
|
|
},
|
|
'RequirementsForm': {
|
|
'equipment': FieldInitial(
|
|
'sport==B',
|
|
_(u'Steigeisen*, Pickel*, Klettergurt*, Steinschlaghelm*,'
|
|
u' Gletscherbrille, wasserfeste Kleidung, Gamaschen'
|
|
u' (* Ausrüstung kann ggf. von der Sektion geliehen werden)'),
|
|
'sport==K',
|
|
_(u'Kletterschuhe, Hüftgurt*, Steinschlaghelm*'
|
|
u' (* Ausrüstung kann ggf. von der Sektion geliehen werden)'),
|
|
'sport==M',
|
|
_(u'Funktionstüchtiges MTB (bitte vorher überprüfen), Fahrrad-Helm'
|
|
u' und Radhandschuhe sind zwingend erforderlich,'
|
|
u' Brille und Protektoren empfehlenswert.'
|
|
u' Die Sattelstütze muss sich tief versenken lassen.'),
|
|
'sport==S',
|
|
_(u'Komplette Skitourenausrüstung inkl. Ski, Lawinen-Pieps*, Schaufel* und Sonde*'
|
|
u' (* Ausrüstung kann ggf. von der Sektion geliehen werden)'),
|
|
'sport==W,terrain==alpine',
|
|
_(u'Feste, knöchelhohe Wanderschuhe, Regenschutz'),
|
|
'sport==W',
|
|
_(u'Festes Schuhwerk, Regenschutz'),
|
|
),
|
|
'requirements': FieldInitial(
|
|
'sport==B,level==beginner',
|
|
_(u'Kondition für ganztätige Aktivität im Freien'
|
|
u' mit Auf- und Abstiegen bis zu 1000 Hm.'),
|
|
'sport==B',
|
|
_(u'Sicheres Vorsteigen am Fels im 4. Grad UIAA.'
|
|
u' Grundkentnisse Hochtouren, Spaltenbergung.'
|
|
u' Kondition für Auf- und Abstiege bis zu 1300 Hm.'),
|
|
'sport==K,level==beginner',
|
|
_(u'Sicheres Klettern im 4. Grad UIAA.'
|
|
u' Beherrschen der Sicherungstechnik.'),
|
|
'sport==K',
|
|
_(u'Sicheres Vorsteigen am Fels im 5. Grad UIAA.'
|
|
u' Beherrschen der Sicherungs- und Abseiltechnik.'),
|
|
'sport==M,level==beginner',
|
|
_(u'Kondition für Radtouren bis 30 km und 500 Hm'
|
|
u' in ca. 3 Stunden.'),
|
|
'sport==M',
|
|
_(u'Kondition für Radtouren bis 60 km und 1000 Hm'
|
|
u' in ca. 5 Stunden.'
|
|
u' Sicheres Beherrschen von Trails der Schwierigkeit S1.'),
|
|
'sport==S,level==beginner',
|
|
_(u'Sicheres Skifahren und erste Erfahrungen abseits'
|
|
u' der gespurten Piste.'),
|
|
'sport==S',
|
|
_(u'Mittelschwere, lange Skitouren bis 1500 Hm.'
|
|
u' Solide Aufstiegs- und Abfahrtstechnik.'),
|
|
'sport==W,terrain==alpine',
|
|
_(u'Kondition für 20 km und 600 Hm in ca. 7 Stunden Gehzeit.'
|
|
u' Trittsicherheit (mittelschwere Wege).'),
|
|
'sport==W',
|
|
_(u'Gehzeit X-Y Stunden, ca. X km, ca. X Hm'),
|
|
),
|
|
},
|
|
'RegistrationForm': {
|
|
'registration_required': FieldInitial(
|
|
'sport==W,overnight==False',
|
|
False,
|
|
'',
|
|
True,
|
|
),
|
|
'deadline': FieldInitial('OTHER'),
|
|
'registration_howto': FieldInitial(
|
|
'',
|
|
_(u'Anmeldung über https://touren.alpenverein-karlsruhe.de/anmeldung'),
|
|
),
|
|
},
|
|
}
|
|
|
|
# EventCreateForm and sub classes
|
|
# FORMS_DEVELOPMENT_INIT = False
|
|
MATRIX_CONFIG = {
|
|
'0': {'description': _(u'Keiner / direkte Abrechnung (Tageswanderung)'),
|
|
'orga_compensation': 0,
|
|
'pubtrans_compensation': 0,
|
|
'trainer_compensation': 0,
|
|
'trainer_daily_compensation': 0,
|
|
'pre_meeting_compensation': 0,
|
|
'participant_fee': 0,
|
|
'participant_daily_fee': 0,
|
|
'pubtrans_bonus': 0,
|
|
'min_participants': 0,
|
|
'max_participants': 0,
|
|
},
|
|
'A': {'description': _(u'A (Mehrtageswanderung Mittelgebirge)'),
|
|
'orga_compensation': 30,
|
|
'pubtrans_compensation': 30,
|
|
'trainer_compensation': 38,
|
|
'trainer_daily_compensation': 48,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 11,
|
|
'participant_daily_fee': 11,
|
|
'pubtrans_bonus': 20,
|
|
'min_participants': 5,
|
|
'max_participants': 8,
|
|
},
|
|
'B': {'description': _(u'B (Alpine Mehrtageswanderung)'),
|
|
'orga_compensation': 30,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 48,
|
|
'trainer_daily_compensation': 73,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 11,
|
|
'participant_daily_fee': 21,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 3,
|
|
'max_participants': 6,
|
|
},
|
|
'C': {'description': _(u'C (Tour/Kurs ohne Übernachtung)'),
|
|
'orga_compensation': 30,
|
|
'pubtrans_compensation': 30,
|
|
'trainer_compensation': 28,
|
|
'trainer_daily_compensation': 57,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 11,
|
|
'participant_daily_fee': 32,
|
|
'pubtrans_bonus': 20,
|
|
'min_participants': 3,
|
|
'max_participants': 5,
|
|
},
|
|
'D': {'description': _(u'D (Tour/Kurs Mittelgebirge)'),
|
|
'orga_compensation': 30,
|
|
'pubtrans_compensation': 30,
|
|
'trainer_compensation': 48,
|
|
'trainer_daily_compensation': 73,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 21,
|
|
'participant_daily_fee': 26,
|
|
'pubtrans_bonus': 20,
|
|
'min_participants': 3,
|
|
'max_participants': 5,
|
|
},
|
|
'E': {'description': _(u'E (Alpine Klettertour DE/AT)'),
|
|
'orga_compensation': 40,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 76,
|
|
'trainer_daily_compensation': 73,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 42,
|
|
'participant_daily_fee': 42,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 2,
|
|
'max_participants': 3,
|
|
},
|
|
'F': {'description': _(u'F (Alpine Klettertour CH/FR/IT/..)'),
|
|
'orga_compensation': 40,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 76,
|
|
'trainer_daily_compensation': 82,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 42,
|
|
'participant_daily_fee': 47,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 2,
|
|
'max_participants': 3,
|
|
},
|
|
'G': {'description': _(u'G (Alpiner Kurs DE/AT)'),
|
|
'orga_compensation': 50,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 96,
|
|
'trainer_daily_compensation': 73,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 37,
|
|
'participant_daily_fee': 32,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 3,
|
|
'max_participants': 4,
|
|
},
|
|
'H': {'description': _(u'H (Alpiner Kurs CH/FR/IT/..)'),
|
|
'orga_compensation': 50,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 96,
|
|
'trainer_daily_compensation': 82,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 37,
|
|
'participant_daily_fee': 32,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 3,
|
|
'max_participants': 4,
|
|
},
|
|
'I': {'description': _(u'I (Alpine MTB/Ski-Tour DE/AT)'),
|
|
'orga_compensation': 40,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 76,
|
|
'trainer_daily_compensation': 73,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 26,
|
|
'participant_daily_fee': 26,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 3,
|
|
'max_participants': 6,
|
|
},
|
|
'J': {'description': _(u'J (Alpine MTB/Ski-Tour CH/FR/IT/..)'),
|
|
'orga_compensation': 40,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 76,
|
|
'trainer_daily_compensation': 82,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 26,
|
|
'participant_daily_fee': 26,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 3,
|
|
'max_participants': 6,
|
|
},
|
|
'K': {'description': _(u'K (Ski-Tour/-Kurs mit Liftbenutzung)'),
|
|
'orga_compensation': 40,
|
|
'pubtrans_compensation': 50,
|
|
'trainer_compensation': 76,
|
|
'trainer_daily_compensation': 124,
|
|
'pre_meeting_compensation': 20,
|
|
'participant_fee': 42,
|
|
'participant_daily_fee': 42,
|
|
'pubtrans_bonus': 30,
|
|
'min_participants': 3,
|
|
'max_participants': 4,
|
|
},
|
|
}
|
|
|
|
# Publishing
|
|
PUBLISH_BEFORE_BEGIN_DAYS = 17
|
|
PUBLISH_BEFORE_DEADLINE_DAYS = 14
|
|
PUBLISH_ISSUES = [
|
|
{
|
|
'issue': u'Heft 1',
|
|
'release': (11, 1),
|
|
'deadline': (18, 11),
|
|
},
|
|
{
|
|
'issue': u'Heft 2',
|
|
'release': (5, 4),
|
|
'deadline': (18, 2),
|
|
},
|
|
{
|
|
'issue': u'Heft 3',
|
|
'release': (5, 7),
|
|
'deadline': (18, 5),
|
|
},
|
|
{
|
|
'issue': u'Heft 4',
|
|
'release': (5, 10),
|
|
'deadline': (18, 8),
|
|
},
|
|
]
|