chore(*): reformat using ruff (#19)
parent
91575eb280
commit
589527e1ac
@ -1,10 +1,17 @@
|
||||
from django.db import models
|
||||
from rules.contrib.models import RulesModelBase, RulesModelMixin
|
||||
from rules.contrib.models import RulesModelBase
|
||||
from rules.contrib.models import RulesModelMixin
|
||||
|
||||
|
||||
# Create your models here.
|
||||
class CommonModel(models.Model, RulesModelMixin, metaclass=RulesModelBase):
|
||||
class Meta:
|
||||
abstract = True
|
||||
default_permissions = (
|
||||
'add_global', 'change_global', 'view_global', 'delete_global', 'list_global', 'view',
|
||||
"add_global",
|
||||
"change_global",
|
||||
"view_global",
|
||||
"delete_global",
|
||||
"list_global",
|
||||
"view",
|
||||
)
|
||||
|
||||
@ -1,121 +1,128 @@
|
||||
from django.db import models
|
||||
from django.core.validators import MinValueValidator
|
||||
from django.db import models
|
||||
|
||||
GRUPPE = [
|
||||
('ASG', 'Alpinsportgruppe'),
|
||||
('OGB', 'Ortsgruppe Bietigheim'),
|
||||
('OGV', 'Ortsgruppe Vaihingen'),
|
||||
('JUG', 'Jugend'),
|
||||
('FAM', 'Familie'),
|
||||
('Ü30', 'Ü30'),
|
||||
('MTB', 'Mountainbike'),
|
||||
('RA', 'RegioAktiv'),
|
||||
('SEK', 'Sektion'),
|
||||
("ASG", "Alpinsportgruppe"),
|
||||
("OGB", "Ortsgruppe Bietigheim"),
|
||||
("OGV", "Ortsgruppe Vaihingen"),
|
||||
("JUG", "Jugend"),
|
||||
("FAM", "Familie"),
|
||||
("Ü30", "Ü30"),
|
||||
("MTB", "Mountainbike"),
|
||||
("RA", "RegioAktiv"),
|
||||
("SEK", "Sektion"),
|
||||
]
|
||||
KATEGORIE = [
|
||||
('WAN', 'Wandern'),
|
||||
('BW', 'Bergwandern'),
|
||||
('KST', 'Klettersteig'),
|
||||
('KL', 'Klettern'),
|
||||
('SKI', 'Piste, Loipe'),
|
||||
('SCH', 'Schneeschuhgehen'),
|
||||
('ST', 'Skitour'),
|
||||
('STH', 'Skihochtour'),
|
||||
('HT', 'Hochtour'),
|
||||
('MTB', 'Montainbike'),
|
||||
('AUS', 'Ausbildung'),
|
||||
('SON', 'Sonstiges z.B. Treffen')
|
||||
("WAN", "Wandern"),
|
||||
("BW", "Bergwandern"),
|
||||
("KST", "Klettersteig"),
|
||||
("KL", "Klettern"),
|
||||
("SKI", "Piste, Loipe"),
|
||||
("SCH", "Schneeschuhgehen"),
|
||||
("ST", "Skitour"),
|
||||
("STH", "Skihochtour"),
|
||||
("HT", "Hochtour"),
|
||||
("MTB", "Montainbike"),
|
||||
("AUS", "Ausbildung"),
|
||||
("SON", "Sonstiges z.B. Treffen"),
|
||||
]
|
||||
KONDITION = [
|
||||
('gering', 'gering'),
|
||||
('mittel', 'mittel'),
|
||||
('groß', 'groß'),
|
||||
('sehr groß', 'sehr groß'),
|
||||
("gering", "gering"),
|
||||
("mittel", "mittel"),
|
||||
("groß", "groß"),
|
||||
("sehr groß", "sehr groß"),
|
||||
]
|
||||
TECHNIK = [
|
||||
('leicht', 'leicht'),
|
||||
('mittel', 'mittel'),
|
||||
('schwer', 'schwer'),
|
||||
('sehr schwer', 'sehr schwer'),
|
||||
("leicht", "leicht"),
|
||||
("mittel", "mittel"),
|
||||
("schwer", "schwer"),
|
||||
("sehr schwer", "sehr schwer"),
|
||||
]
|
||||
SAISON = [
|
||||
('ganzjährig','ganzjährig'),
|
||||
('Indoor', 'Indoor'),
|
||||
('Sommer', 'Sommer'),
|
||||
('Winter', 'Winter'),
|
||||
("ganzjährig", "ganzjährig"),
|
||||
("Indoor", "Indoor"),
|
||||
("Sommer", "Sommer"),
|
||||
("Winter", "Winter"),
|
||||
]
|
||||
EVENTART = [
|
||||
('Einzeltermin', 'Einzeltermin',),
|
||||
('Mehrtagesevent', 'Mehrtagesevent',),
|
||||
('Regelmäßiges Event/Training', 'Regelmäßiges Event/Training',),
|
||||
('Tagesevent', 'Tagesevent',),
|
||||
('Wochenendevent', 'Wochenendevent',),
|
||||
(
|
||||
"Einzeltermin",
|
||||
"Einzeltermin",
|
||||
),
|
||||
(
|
||||
"Mehrtagesevent",
|
||||
"Mehrtagesevent",
|
||||
),
|
||||
(
|
||||
"Regelmäßiges Event/Training",
|
||||
"Regelmäßiges Event/Training",
|
||||
),
|
||||
(
|
||||
"Tagesevent",
|
||||
"Tagesevent",
|
||||
),
|
||||
(
|
||||
"Wochenendevent",
|
||||
"Wochenendevent",
|
||||
),
|
||||
]
|
||||
KLASSIFIZIERUNG = [
|
||||
('Gemeinschaftstour', 'Gemeinschaftstour'),
|
||||
('Ausbildung', 'Ausbildung'),
|
||||
("Gemeinschaftstour", "Gemeinschaftstour"),
|
||||
("Ausbildung", "Ausbildung"),
|
||||
]
|
||||
|
||||
|
||||
# Create your models here.
|
||||
class Termin(models.Model):
|
||||
title = models.CharField('Titel', max_length=100)
|
||||
subtitle = models.CharField('Untertitel', max_length=100, blank=True)
|
||||
start_date = models.DateField('Von')
|
||||
end_date = models.DateField('Bis')
|
||||
group = models.CharField('Gruppe',
|
||||
choices=GRUPPE,
|
||||
max_length=100)
|
||||
responsible = models.CharField('Organisator', max_length=100, blank=False)
|
||||
phone = models.CharField(max_length=20, verbose_name='Telefonnumer', blank=True)
|
||||
email = models.EmailField(max_length=100, verbose_name='Email', blank=False)
|
||||
category = models.CharField('Kategorie', blank=False, choices=KATEGORIE, max_length=100,
|
||||
default='SON')
|
||||
condition = models.CharField('Kondition', blank=False, choices=KONDITION, max_length=100,
|
||||
default='mittel')
|
||||
technik = models.CharField('Technik', blank=False, choices=TECHNIK, max_length=100,
|
||||
default='mittel')
|
||||
saison = models.CharField('Saison', blank=False, choices=SAISON, max_length=100,
|
||||
default='ganzjährig')
|
||||
eventart = models.CharField('Eventart', blank=False, choices=EVENTART, max_length=100,
|
||||
default='Einzeltermin')
|
||||
klassifizierung = models.CharField('Klassifizierung', blank=False, choices=KLASSIFIZIERUNG,
|
||||
max_length=100,
|
||||
default='Gemeinschaftstour')
|
||||
equipment = models.TextField('Ausrüstung',
|
||||
blank=True)
|
||||
voraussetzungen = models.TextField('Voraussetzungen',
|
||||
blank=True)
|
||||
description = models.TextField('Beschreibung',
|
||||
blank=True)
|
||||
max_participants = models.IntegerField('Max. Teilnehmerzahl',
|
||||
blank=False,
|
||||
validators=[
|
||||
MinValueValidator(1)
|
||||
],
|
||||
default=10)
|
||||
anforderung_hoehe = models.IntegerField('Höhenmeter in Meter',
|
||||
blank=True,
|
||||
validators=[
|
||||
MinValueValidator(0)
|
||||
],
|
||||
default=0)
|
||||
anforderung_strecke = models.IntegerField('Strecke in Kilometer',
|
||||
blank=True,
|
||||
validators=[
|
||||
MinValueValidator(0)
|
||||
],
|
||||
default=0)
|
||||
anforderung_dauer = models.IntegerField('Etappendauer in Stunden',
|
||||
blank=True,
|
||||
validators=[
|
||||
MinValueValidator(0)
|
||||
],
|
||||
default=0)
|
||||
title = models.CharField("Titel", max_length=100)
|
||||
subtitle = models.CharField("Untertitel", max_length=100, blank=True)
|
||||
start_date = models.DateField("Von")
|
||||
end_date = models.DateField("Bis")
|
||||
group = models.CharField("Gruppe", choices=GRUPPE, max_length=100)
|
||||
responsible = models.CharField("Organisator", max_length=100, blank=False)
|
||||
phone = models.CharField(max_length=20, verbose_name="Telefonnumer", blank=True)
|
||||
email = models.EmailField(max_length=100, verbose_name="Email", blank=False)
|
||||
category = models.CharField(
|
||||
"Kategorie", blank=False, choices=KATEGORIE, max_length=100, default="SON"
|
||||
)
|
||||
condition = models.CharField(
|
||||
"Kondition", blank=False, choices=KONDITION, max_length=100, default="mittel"
|
||||
)
|
||||
technik = models.CharField(
|
||||
"Technik", blank=False, choices=TECHNIK, max_length=100, default="mittel"
|
||||
)
|
||||
saison = models.CharField(
|
||||
"Saison", blank=False, choices=SAISON, max_length=100, default="ganzjährig"
|
||||
)
|
||||
eventart = models.CharField(
|
||||
"Eventart", blank=False, choices=EVENTART, max_length=100, default="Einzeltermin"
|
||||
)
|
||||
klassifizierung = models.CharField(
|
||||
"Klassifizierung",
|
||||
blank=False,
|
||||
choices=KLASSIFIZIERUNG,
|
||||
max_length=100,
|
||||
default="Gemeinschaftstour",
|
||||
)
|
||||
equipment = models.TextField("Ausrüstung", blank=True)
|
||||
voraussetzungen = models.TextField("Voraussetzungen", blank=True)
|
||||
description = models.TextField("Beschreibung", blank=True)
|
||||
max_participants = models.IntegerField(
|
||||
"Max. Teilnehmerzahl", blank=False, validators=[MinValueValidator(1)], default=10
|
||||
)
|
||||
anforderung_hoehe = models.IntegerField(
|
||||
"Höhenmeter in Meter", blank=True, validators=[MinValueValidator(0)], default=0
|
||||
)
|
||||
anforderung_strecke = models.IntegerField(
|
||||
"Strecke in Kilometer", blank=True, validators=[MinValueValidator(0)], default=0
|
||||
)
|
||||
anforderung_dauer = models.IntegerField(
|
||||
"Etappendauer in Stunden", blank=True, validators=[MinValueValidator(0)], default=0
|
||||
)
|
||||
|
||||
def __str__(self):
|
||||
return "{} {}".format(self.title, str(self.group))
|
||||
|
||||
class Meta:
|
||||
verbose_name = 'Termin'
|
||||
verbose_name_plural = 'Termine'
|
||||
verbose_name = "Termin"
|
||||
verbose_name_plural = "Termine"
|
||||
|
||||
@ -1,100 +1,89 @@
|
||||
from django.shortcuts import render
|
||||
from django import forms
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.contrib.admin import widgets
|
||||
from django.core.validators import MinValueValidator
|
||||
from .models import Termin, GRUPPE, KATEGORIE, KONDITION, TECHNIK, SAISON, EVENTART, KLASSIFIZIERUNG
|
||||
from django.shortcuts import render
|
||||
|
||||
datepicker = forms.TextInput(attrs={'class': 'datepicker'})
|
||||
from .models import EVENTART
|
||||
from .models import GRUPPE
|
||||
from .models import KATEGORIE
|
||||
from .models import KLASSIFIZIERUNG
|
||||
from .models import KONDITION
|
||||
from .models import SAISON
|
||||
from .models import TECHNIK
|
||||
from .models import Termin
|
||||
|
||||
datepicker = forms.TextInput(attrs={"class": "datepicker"})
|
||||
|
||||
class TerminForm(forms.Form):
|
||||
|
||||
|
||||
title = forms.CharField(label='Titel')
|
||||
subtitle = forms.CharField(label='Untertitel')
|
||||
start_date = forms.DateField(label='Von',
|
||||
widget=datepicker)
|
||||
end_date = forms.DateField(label='Bis',
|
||||
widget=datepicker)
|
||||
group = forms.ChoiceField(label='Gruppe',
|
||||
required=True,
|
||||
choices=GRUPPE)
|
||||
category = forms.ChoiceField(label='Kategorie', required=True, choices=KATEGORIE)
|
||||
condition = forms.ChoiceField(label='Kondition', required=True, choices=KONDITION)
|
||||
technik = forms.ChoiceField(label='Technik', required=True, choices=TECHNIK)
|
||||
saison = forms.ChoiceField(label='Saison', required=True, choices=SAISON)
|
||||
eventart = forms.ChoiceField(label='Eventart', required=True, choices=EVENTART)
|
||||
klassifizierung = forms.ChoiceField(label='Klassifizierung', required=True, choices=KLASSIFIZIERUNG)
|
||||
anforderung_hoehe = forms.IntegerField(label='Höhenmeter in Metern',
|
||||
required=True,
|
||||
validators=[
|
||||
MinValueValidator(0)
|
||||
])
|
||||
anforderung_strecke = forms.IntegerField(label='Strecke in Kilometern',
|
||||
required=True,
|
||||
validators=[
|
||||
MinValueValidator(0)
|
||||
])
|
||||
anforderung_dauer = forms.IntegerField(label='Etappendauer in Stunden',
|
||||
required=True,
|
||||
validators=[
|
||||
MinValueValidator(0)
|
||||
])
|
||||
description = forms.CharField(label='Beschreibung',
|
||||
widget=forms.Textarea,
|
||||
required=False)
|
||||
equipment = forms.CharField(label='Ausrüstung',
|
||||
widget=forms.Textarea,
|
||||
required=False)
|
||||
voraussetzungen = forms.CharField(label='Voraussetzungen',
|
||||
widget=forms.Textarea,
|
||||
required=False)
|
||||
max_participants = forms.IntegerField(label='Max. Teilnehmerzahl',
|
||||
required=True,
|
||||
validators=[
|
||||
MinValueValidator(1)
|
||||
])
|
||||
responsible = forms.CharField(label='Organisator', max_length=100,
|
||||
required=False)
|
||||
phone = forms.CharField(max_length=20, label='Telefonnumer',
|
||||
required=False)
|
||||
email = forms.EmailField(max_length=100, label='Email',
|
||||
required=False)
|
||||
class TerminForm(forms.Form):
|
||||
title = forms.CharField(label="Titel")
|
||||
subtitle = forms.CharField(label="Untertitel")
|
||||
start_date = forms.DateField(label="Von", widget=datepicker)
|
||||
end_date = forms.DateField(label="Bis", widget=datepicker)
|
||||
group = forms.ChoiceField(label="Gruppe", required=True, choices=GRUPPE)
|
||||
category = forms.ChoiceField(label="Kategorie", required=True, choices=KATEGORIE)
|
||||
condition = forms.ChoiceField(label="Kondition", required=True, choices=KONDITION)
|
||||
technik = forms.ChoiceField(label="Technik", required=True, choices=TECHNIK)
|
||||
saison = forms.ChoiceField(label="Saison", required=True, choices=SAISON)
|
||||
eventart = forms.ChoiceField(label="Eventart", required=True, choices=EVENTART)
|
||||
klassifizierung = forms.ChoiceField(
|
||||
label="Klassifizierung", required=True, choices=KLASSIFIZIERUNG
|
||||
)
|
||||
anforderung_hoehe = forms.IntegerField(
|
||||
label="Höhenmeter in Metern", required=True, validators=[MinValueValidator(0)]
|
||||
)
|
||||
anforderung_strecke = forms.IntegerField(
|
||||
label="Strecke in Kilometern", required=True, validators=[MinValueValidator(0)]
|
||||
)
|
||||
anforderung_dauer = forms.IntegerField(
|
||||
label="Etappendauer in Stunden", required=True, validators=[MinValueValidator(0)]
|
||||
)
|
||||
description = forms.CharField(label="Beschreibung", widget=forms.Textarea, required=False)
|
||||
equipment = forms.CharField(label="Ausrüstung", widget=forms.Textarea, required=False)
|
||||
voraussetzungen = forms.CharField(
|
||||
label="Voraussetzungen", widget=forms.Textarea, required=False
|
||||
)
|
||||
max_participants = forms.IntegerField(
|
||||
label="Max. Teilnehmerzahl", required=True, validators=[MinValueValidator(1)]
|
||||
)
|
||||
responsible = forms.CharField(label="Organisator", max_length=100, required=False)
|
||||
phone = forms.CharField(max_length=20, label="Telefonnumer", required=False)
|
||||
email = forms.EmailField(max_length=100, label="Email", required=False)
|
||||
|
||||
|
||||
# Create your views here.
|
||||
def index(request, *args):
|
||||
if request.method == 'POST':
|
||||
if request.method == "POST":
|
||||
form = TerminForm(request.POST)
|
||||
if form.is_valid():
|
||||
termin = Termin(title=form.cleaned_data["title"],
|
||||
subtitle=form.cleaned_data["subtitle"],
|
||||
start_date=form.cleaned_data["start_date"],
|
||||
end_date=form.cleaned_data["end_date"],
|
||||
group=form.cleaned_data["group"],
|
||||
responsible=form.cleaned_data["responsible"],
|
||||
phone=form.cleaned_data["phone"],
|
||||
email=form.cleaned_data["email"],
|
||||
category=form.cleaned_data["category"],
|
||||
condition=form.cleaned_data["condition"],
|
||||
technik=form.cleaned_data["technik"],
|
||||
saison=form.cleaned_data["saison"],
|
||||
eventart=form.cleaned_data["eventart"],
|
||||
klassifizierung=form.cleaned_data["klassifizierung"],
|
||||
equipment=form.cleaned_data["equipment"],
|
||||
voraussetzungen=form.cleaned_data["voraussetzungen"],
|
||||
max_participants=form.cleaned_data["max_participants"],
|
||||
anforderung_hoehe=form.cleaned_data["anforderung_hoehe"],
|
||||
anforderung_strecke=form.cleaned_data["anforderung_strecke"],
|
||||
anforderung_dauer=form.cleaned_data["anforderung_dauer"],
|
||||
description=form.cleaned_data["description"])
|
||||
termin = Termin(
|
||||
title=form.cleaned_data["title"],
|
||||
subtitle=form.cleaned_data["subtitle"],
|
||||
start_date=form.cleaned_data["start_date"],
|
||||
end_date=form.cleaned_data["end_date"],
|
||||
group=form.cleaned_data["group"],
|
||||
responsible=form.cleaned_data["responsible"],
|
||||
phone=form.cleaned_data["phone"],
|
||||
email=form.cleaned_data["email"],
|
||||
category=form.cleaned_data["category"],
|
||||
condition=form.cleaned_data["condition"],
|
||||
technik=form.cleaned_data["technik"],
|
||||
saison=form.cleaned_data["saison"],
|
||||
eventart=form.cleaned_data["eventart"],
|
||||
klassifizierung=form.cleaned_data["klassifizierung"],
|
||||
equipment=form.cleaned_data["equipment"],
|
||||
voraussetzungen=form.cleaned_data["voraussetzungen"],
|
||||
max_participants=form.cleaned_data["max_participants"],
|
||||
anforderung_hoehe=form.cleaned_data["anforderung_hoehe"],
|
||||
anforderung_strecke=form.cleaned_data["anforderung_strecke"],
|
||||
anforderung_dauer=form.cleaned_data["anforderung_dauer"],
|
||||
description=form.cleaned_data["description"],
|
||||
)
|
||||
termin.save()
|
||||
return published(request)
|
||||
else:
|
||||
form = TerminForm()
|
||||
return render(request, 'ludwigsburgalpin/termine.html', {'form': form.as_table()})
|
||||
return render(request, "ludwigsburgalpin/termine.html", {"form": form.as_table()})
|
||||
|
||||
|
||||
def published(request):
|
||||
return render(request, 'ludwigsburgalpin/published.html')
|
||||
return render(request, "ludwigsburgalpin/published.html")
|
||||
|
||||
Loading…
Reference in New Issue