Files
kasu/maistar_ranking/forms.py
Christian Berg 9c2413a794 Stylesheets werden nur mit Less erzeugt. Damit können sie gleich
optimiert werden.
jQuery wurde entfernt.
Übersetzungen wurden korrigiert.
Neue sync.sh Datei, welche änderungen mit rsync auf den Server spielt
und das neuladen erzwingt.
2014-12-14 23:57:40 +01:00

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