1
0
mirror of https://gitlab.com/animath/si/plateforme.git synced 2025-02-06 18:53:03 +00:00

62 lines
1.6 KiB
Python
Raw Normal View History

2020-05-04 20:21:53 +02:00
from django import forms
from django.utils.translation import gettext_lazy as _
2020-05-04 23:37:21 +02:00
from member.models import TFJMUser, Solution, Synthesis
2020-05-04 20:21:53 +02:00
from tfjm.inputs import DatePickerInput, DateTimePickerInput, AmountInput
from tournament.models import Tournament, Team
class TournamentForm(forms.ModelForm):
class Meta:
model = Tournament
fields = '__all__'
widgets = {
"price": AmountInput(),
"date_start": DatePickerInput(),
"date_end": DatePickerInput(),
"date_inscription": DateTimePickerInput(),
"date_solutions": DateTimePickerInput(),
"date_syntheses": DateTimePickerInput(),
}
class OrganizerForm(forms.ModelForm):
class Meta:
model = TFJMUser
fields = ('last_name', 'first_name', 'email', 'is_superuser',)
def save(self, commit=True):
user = self.instance
user.role = '0admin' if user.is_superuser else '1organizer'
super().save(commit)
class TeamForm(forms.ModelForm):
class Meta:
model = Team
fields = ('name', 'trigram', 'tournament',)
class JoinTeam(forms.Form):
access_code = forms.CharField(
label=_("Access code"),
max_length=6,
)
2020-05-04 23:37:21 +02:00
class SolutionForm(forms.ModelForm):
problem = forms.ChoiceField(
label=_("Problem"),
choices=[(str(i), _("Problem #{problem:d}").format(problem=i)) for i in range(1, 9)],
)
class Meta:
model = Solution
fields = ('file', 'problem',)
class SynthesisForm(forms.ModelForm):
class Meta:
model = Synthesis
2020-05-05 00:11:38 +02:00
fields = ('file', 'source', 'round',)