optimiert werden. jQuery wurde entfernt. Übersetzungen wurden korrigiert. Neue sync.sh Datei, welche änderungen mit rsync auf den Server spielt und das neuladen erzwingt.
38 lines
1.2 KiB
Python
38 lines
1.2 KiB
Python
# -*- encoding: utf-8 -*-
|
|
__author__ = 'christian'
|
|
|
|
from django import forms
|
|
from django.utils.translation import ugettext as _
|
|
|
|
from . import models
|
|
|
|
|
|
class GameForm(forms.ModelForm):
|
|
error_css_class = 'error'
|
|
required_css_class = 'required'
|
|
|
|
class Meta(object):
|
|
fields = [
|
|
'player1', 'player1_score',
|
|
'player2', 'player2_score',
|
|
'player3', 'player3_score',
|
|
'player4', 'player4_score',
|
|
'player5', 'player5_score',
|
|
'player6', 'player6_score',
|
|
'comment'
|
|
]
|
|
model = models.Game
|
|
|
|
def clean(self):
|
|
cleaned_data = super(GameForm, self).clean()
|
|
players_in_game = set()
|
|
for player_nr in (
|
|
'player1', 'player2', 'player3', 'player4', 'player5', 'player6'):
|
|
current_player = cleaned_data.get(player_nr)
|
|
if current_player and current_player in players_in_game:
|
|
msg = _("%s may only participate once." % current_player)
|
|
self._errors[player_nr] = self.error_class([msg])
|
|
del cleaned_data[player_nr]
|
|
players_in_game.add(current_player)
|
|
return cleaned_data
|