Merge branch 'master' into css3_redesign
# Conflicts: # requirements/base.txt # src/content/locale/de/LC_MESSAGES/django.mo # src/content/locale/de/LC_MESSAGES/django.po # src/events/locale/de/LC_MESSAGES/django.mo # src/events/locale/de/LC_MESSAGES/django.po # src/kasu/locale/de/LC_MESSAGES/django.po # src/mahjong_ranking/locale/de/LC_MESSAGES/django.mo # src/mahjong_ranking/locale/de/LC_MESSAGES/django.po # src/maistar_ranking/locale/de/LC_MESSAGES/django.po # src/membership/locale/de/LC_MESSAGES/django.mo # src/membership/locale/de/LC_MESSAGES/django.po # src/utils/locale/de/LC_MESSAGES/django.po
This commit is contained in:
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: kasu.mahjong_ranking\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-04-27 09:49+0200\n"
|
||||
"POT-Creation-Date: 2018-01-11 22:50+0100\n"
|
||||
"PO-Revision-Date: 2016-09-28 00:24+0200\n"
|
||||
"Last-Translator: Christian Berg <xeniac.at@gmail.com>\n"
|
||||
"Language-Team: Kasu <verein@kasu.at>\n"
|
||||
@@ -19,205 +19,208 @@ msgstr ""
|
||||
"X-Generator: Poedit 1.8.9\n"
|
||||
"X-Translated-Using: django-rosetta 0.7.2\n"
|
||||
|
||||
#: admin.py:24
|
||||
#: src/maistar_ranking/admin.py:24
|
||||
msgid "Recalculate"
|
||||
msgstr "Neuberechnen"
|
||||
|
||||
#: forms.py:35
|
||||
#: src/maistar_ranking/forms.py:35
|
||||
#, python-format
|
||||
msgid "%s may only participate once."
|
||||
msgstr "%s darf nur einmal teilnehmen."
|
||||
|
||||
#: models.py:20
|
||||
#: src/maistar_ranking/models.py:21
|
||||
msgid "Comment"
|
||||
msgstr "Kommentar"
|
||||
|
||||
#: models.py:22
|
||||
#: src/maistar_ranking/models.py:24
|
||||
msgid "Player 1"
|
||||
msgstr "Spieler 1"
|
||||
|
||||
#: models.py:24 models.py:30 models.py:36 models.py:42 models.py:48
|
||||
#: models.py:54 templates/maistar_ranking/ranking_list.html:19
|
||||
#: src/maistar_ranking/models.py:26 src/maistar_ranking/models.py:33
|
||||
#: src/maistar_ranking/models.py:40 src/maistar_ranking/models.py:47
|
||||
#: src/maistar_ranking/models.py:54 src/maistar_ranking/models.py:61
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:19
|
||||
msgid "Score"
|
||||
msgstr "Punkte"
|
||||
|
||||
#: models.py:28
|
||||
#: src/maistar_ranking/models.py:31
|
||||
msgid "Player 2"
|
||||
msgstr "Spieler 2"
|
||||
|
||||
#: models.py:34
|
||||
#: src/maistar_ranking/models.py:38
|
||||
msgid "Player 3"
|
||||
msgstr "Spieler 3"
|
||||
|
||||
#: models.py:40
|
||||
#: src/maistar_ranking/models.py:45
|
||||
msgid "Player 4"
|
||||
msgstr "Spieler 4"
|
||||
|
||||
#: models.py:46
|
||||
#: src/maistar_ranking/models.py:52
|
||||
msgid "Player 5"
|
||||
msgstr "Spieler 5"
|
||||
|
||||
#: models.py:52
|
||||
#: src/maistar_ranking/models.py:59
|
||||
msgid "Player 6"
|
||||
msgstr "Spieler 6"
|
||||
|
||||
#: models.py:58
|
||||
#: src/maistar_ranking/models.py:65
|
||||
msgid "Has been confirmed"
|
||||
msgstr "Wurde bestätigt"
|
||||
|
||||
#: models.py:60
|
||||
#: src/maistar_ranking/models.py:67
|
||||
msgid "the game only counts whe it has been confirmed"
|
||||
msgstr "das Spiel zählt nur wenn es bestätigt wurde"
|
||||
|
||||
#: models.py:63 models.py:147 templates/maistar_ranking/player_game_list.html:6
|
||||
#: templates/maistar_ranking/ranking_list.html:4
|
||||
#: templates/maistar_ranking/ranking_list.html:72
|
||||
#: src/maistar_ranking/models.py:70 src/maistar_ranking/models.py:153
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:6
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:4
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:72
|
||||
msgid "Season"
|
||||
msgstr "Saison"
|
||||
|
||||
#: models.py:74
|
||||
#: src/maistar_ranking/models.py:80
|
||||
msgid "Mai-Star Game with {0} from {1:%Y-%m-%d}"
|
||||
msgstr "Mai-Star Spiel mit {0} vom {1:%Y-%m-%d}"
|
||||
|
||||
#: templates/maistar_ranking/game_form.html:5
|
||||
#: templates/maistar_ranking/game_form.html:16
|
||||
#: templates/maistar_ranking/game_list.html:27
|
||||
#: templates/maistar_ranking/player_game_list.html:44
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_form.html:5
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_form.html:16
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:27
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:44
|
||||
msgid "Edit Game"
|
||||
msgstr "Spiel bearbeiten"
|
||||
|
||||
#: templates/maistar_ranking/game_form.html:5
|
||||
#: templates/maistar_ranking/game_form.html:16
|
||||
#: templates/maistar_ranking/game_list.html:41
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_form.html:5
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_form.html:16
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:41
|
||||
msgid "Add Game"
|
||||
msgstr "Spiel hinzufügen"
|
||||
|
||||
#: templates/maistar_ranking/game_form.html:76
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_form.html:76
|
||||
msgid "Back"
|
||||
msgstr "Zurück"
|
||||
|
||||
#: templates/maistar_ranking/game_form.html:77
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_form.html:77
|
||||
msgid "Save"
|
||||
msgstr "Speichern"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:4
|
||||
#: templates/maistar_ranking/player_game_list.html:6
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:4
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:6
|
||||
msgid "Mai-Star Games"
|
||||
msgstr "Mai-Star Spiele"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:7
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:7
|
||||
msgid "Played Mai-Star Games"
|
||||
msgstr "Gespielte Mai-Star Spiele"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:11
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:11
|
||||
msgid "Game"
|
||||
msgstr "Spiel"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:14
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:14
|
||||
msgid "Place"
|
||||
msgstr "Platz"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:19
|
||||
#: templates/maistar_ranking/player_game_list.html:36
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:19
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:36
|
||||
msgid "Points"
|
||||
msgstr "Punkte"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:24
|
||||
#: templates/maistar_ranking/player_game_list.html:41
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:24
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:41
|
||||
msgid "Delete Game"
|
||||
msgstr "Spiel löschen"
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:33
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:33
|
||||
msgid "No Mai-Star games have been added to this event yet."
|
||||
msgstr "Für diese Veranstaltung wurden noch keine Mai-Star Spiele erfasst."
|
||||
|
||||
#: templates/maistar_ranking/game_list.html:40
|
||||
#: src/maistar_ranking/templates/maistar_ranking/game_list.html:40
|
||||
msgid "Edit Event"
|
||||
msgstr "Veranstaltung bearbeiten"
|
||||
|
||||
#: templates/maistar_ranking/hanchan_confirm_delete.html:4
|
||||
#: templates/maistar_ranking/hanchan_confirm_delete.html:10
|
||||
#: src/maistar_ranking/templates/maistar_ranking/hanchan_confirm_delete.html:4
|
||||
#: src/maistar_ranking/templates/maistar_ranking/hanchan_confirm_delete.html:10
|
||||
msgid "Delete game"
|
||||
msgstr "Spiel löschen"
|
||||
|
||||
#: templates/maistar_ranking/hanchan_confirm_delete.html:13
|
||||
#: src/maistar_ranking/templates/maistar_ranking/hanchan_confirm_delete.html:13
|
||||
msgid "Cancel"
|
||||
msgstr "Abbrechen"
|
||||
|
||||
#: templates/maistar_ranking/hanchan_confirm_delete.html:14
|
||||
#: src/maistar_ranking/templates/maistar_ranking/hanchan_confirm_delete.html:14
|
||||
msgid "Delete"
|
||||
msgstr "Löschen"
|
||||
|
||||
#: templates/maistar_ranking/page.html:5
|
||||
#: src/maistar_ranking/templates/maistar_ranking/page.html:5
|
||||
msgid "Archive"
|
||||
msgstr "Archiv"
|
||||
|
||||
#: templates/maistar_ranking/page.html:7
|
||||
#: src/maistar_ranking/templates/maistar_ranking/page.html:7
|
||||
msgid "Add Event"
|
||||
msgstr "Veranstaltung hinzufügen"
|
||||
|
||||
#: templates/maistar_ranking/player_game_list.html:4
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:4
|
||||
msgid "Ladder Score for"
|
||||
msgstr "Ladder Wertung für"
|
||||
|
||||
#: templates/maistar_ranking/player_game_list.html:9
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:9
|
||||
msgid "Mai-Star Games with"
|
||||
msgstr "Mai-Star Spiele mit"
|
||||
|
||||
#: templates/maistar_ranking/player_game_list.html:14
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:14
|
||||
msgid "Date"
|
||||
msgstr "Datum"
|
||||
|
||||
#: templates/maistar_ranking/player_game_list.html:15
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:15
|
||||
msgid "Event"
|
||||
msgstr "Veranstaltung"
|
||||
|
||||
#: templates/maistar_ranking/player_game_list.html:16
|
||||
#: src/maistar_ranking/templates/maistar_ranking/player_game_list.html:16
|
||||
msgid "Players"
|
||||
msgstr "Spieler"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:4
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:4
|
||||
msgid "Mai-Star Ranking"
|
||||
msgstr "Mai-Star Platzierung"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:10
|
||||
#: templates/maistar_ranking/ranking_list.html:18
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:10
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:18
|
||||
msgid "Placement"
|
||||
msgstr "Platzierung"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:11
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:11
|
||||
msgid "Avatar"
|
||||
msgstr "Avatar"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:12
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:12
|
||||
msgid "Nickname"
|
||||
msgstr "Spitzname"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:13
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:13
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:14
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:14
|
||||
msgid "Average"
|
||||
msgstr "Durchschnitt"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:15
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:15
|
||||
msgid "Games"
|
||||
msgstr "Spiele"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:20
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:20
|
||||
msgid "count"
|
||||
msgstr "Anzahl"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:21
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:21
|
||||
msgid "good"
|
||||
msgstr "Gut"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:22
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:22
|
||||
msgid "won"
|
||||
msgstr "Gewonnen"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:43
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:43
|
||||
msgid ""
|
||||
"Unfortunately, nobody has it been done in the ranking.\n"
|
||||
" A player must have 6 games done, to be added to the ranking."
|
||||
@@ -226,15 +229,15 @@ msgstr ""
|
||||
"als 6 Spiele innerhalb einer Saison absolviert haben, werden für das "
|
||||
"Endergebnis nicht gewertet."
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:52
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:52
|
||||
msgid "Latest Games"
|
||||
msgstr "Letzten Spiele"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:63
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:63
|
||||
msgid "Latest Events"
|
||||
msgstr "Letzten Veranstaltungen"
|
||||
|
||||
#: templates/maistar_ranking/ranking_list.html:70
|
||||
#: src/maistar_ranking/templates/maistar_ranking/ranking_list.html:70
|
||||
msgid "Ladder Archive"
|
||||
msgstr "Archiv"
|
||||
|
||||
|
||||
@@ -37,19 +37,19 @@ class Migration(migrations.Migration):
|
||||
('season', models.PositiveSmallIntegerField(
|
||||
verbose_name='Saison', editable=False, db_index=True)),
|
||||
('event', models.ForeignKey(
|
||||
related_name='maistargame_set', to='events.Event')),
|
||||
related_name='maistargame_set', to='events.Event', on_delete=models.CASCADE)),
|
||||
('player1', models.ForeignKey(related_name='+',
|
||||
verbose_name='Spieler 1', to=settings.AUTH_USER_MODEL)),
|
||||
verbose_name='Spieler 1', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
('player2', models.ForeignKey(related_name='+',
|
||||
verbose_name='Spieler 2', to=settings.AUTH_USER_MODEL)),
|
||||
verbose_name='Spieler 2', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
('player3', models.ForeignKey(related_name='+',
|
||||
verbose_name='Spieler 3', to=settings.AUTH_USER_MODEL)),
|
||||
verbose_name='Spieler 3', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
('player4', models.ForeignKey(related_name='+',
|
||||
verbose_name='Spieler 4', to=settings.AUTH_USER_MODEL)),
|
||||
verbose_name='Spieler 4', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
('player5', models.ForeignKey(related_name='+',
|
||||
verbose_name='Spieler 5', to=settings.AUTH_USER_MODEL)),
|
||||
verbose_name='Spieler 5', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
('player6', models.ForeignKey(related_name='+',
|
||||
verbose_name='Spieler 6', to=settings.AUTH_USER_MODEL)),
|
||||
verbose_name='Spieler 6', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
@@ -65,7 +65,7 @@ class Migration(migrations.Migration):
|
||||
('games_count', models.PositiveSmallIntegerField(default=0)),
|
||||
('games_good', models.PositiveSmallIntegerField(default=0)),
|
||||
('games_won', models.PositiveSmallIntegerField(default=0)),
|
||||
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
|
||||
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
|
||||
],
|
||||
options={
|
||||
'ordering': ('-season', 'placement', 'avg_placement', '-avg_score'),
|
||||
|
||||
52
src/maistar_ranking/migrations/0007_auto_20171214_1215.py
Normal file
52
src/maistar_ranking/migrations/0007_auto_20171214_1215.py
Normal file
@@ -0,0 +1,52 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.8 on 2017-12-14 11:15
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('maistar_ranking', '0006_auto_20171115_0653'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='game',
|
||||
name='player1',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Spieler 1'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='game',
|
||||
name='player2',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Spieler 2'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='game',
|
||||
name='player3',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Spieler 3'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='game',
|
||||
name='player4',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Spieler 4'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='game',
|
||||
name='player5',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Spieler 5'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='game',
|
||||
name='player6',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Spieler 6'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ranking',
|
||||
name='user',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL),
|
||||
),
|
||||
]
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
import logging
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.db import models
|
||||
from django.db.models.signals import post_delete, post_save
|
||||
from django.utils.translation import ugettext as _
|
||||
from django.dispatch import receiver
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext as _
|
||||
|
||||
from events.models import Event
|
||||
from . import settings, managers
|
||||
@@ -16,40 +16,47 @@ class Game(models.Model):
|
||||
"""to record a complete game with 6 different players."""
|
||||
|
||||
_player_list = list()
|
||||
event = models.ForeignKey(Event, related_name='maistargame_set')
|
||||
event = models.ForeignKey(Event, on_delete=models.CASCADE,
|
||||
related_name='maistargame_set')
|
||||
comment = models.TextField(_('Comment'), blank=True)
|
||||
player1 = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_("Player 1"), related_name='+'
|
||||
settings.AUTH_USER_MODEL, on_delete=models.PROTECT,
|
||||
verbose_name=_("Player 1"), related_name='+'
|
||||
)
|
||||
player1_score = models.SmallIntegerField(_("Score"))
|
||||
player1_placement = models.PositiveSmallIntegerField(editable=False)
|
||||
|
||||
player2 = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_("Player 2"), related_name='+'
|
||||
settings.AUTH_USER_MODEL, on_delete=models.PROTECT,
|
||||
verbose_name=_("Player 2"), related_name='+'
|
||||
)
|
||||
player2_score = models.SmallIntegerField(_("Score"))
|
||||
player2_placement = models.PositiveSmallIntegerField(editable=False)
|
||||
|
||||
player3 = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_("Player 3"), related_name='+'
|
||||
settings.AUTH_USER_MODEL, on_delete=models.PROTECT,
|
||||
verbose_name=_("Player 3"), related_name='+'
|
||||
)
|
||||
player3_score = models.SmallIntegerField(_("Score"))
|
||||
player3_placement = models.PositiveSmallIntegerField(editable=False)
|
||||
|
||||
player4 = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_("Player 4"), related_name='+'
|
||||
settings.AUTH_USER_MODEL, on_delete=models.PROTECT,
|
||||
verbose_name=_("Player 4"), related_name='+'
|
||||
)
|
||||
player4_score = models.SmallIntegerField(_("Score"))
|
||||
player4_placement = models.PositiveSmallIntegerField(editable=False)
|
||||
|
||||
player5 = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_("Player 5"), related_name='+'
|
||||
settings.AUTH_USER_MODEL, on_delete=models.PROTECT,
|
||||
verbose_name=_("Player 5"), related_name='+'
|
||||
)
|
||||
player5_score = models.SmallIntegerField(_("Score"))
|
||||
player5_placement = models.PositiveSmallIntegerField(editable=False)
|
||||
|
||||
player6 = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_("Player 6"), related_name='+'
|
||||
settings.AUTH_USER_MODEL, on_delete=models.PROTECT,
|
||||
verbose_name=_("Player 6"), related_name='+'
|
||||
)
|
||||
player6_score = models.SmallIntegerField(_("Score"))
|
||||
player6_placement = models.PositiveSmallIntegerField(editable=False)
|
||||
@@ -69,7 +76,6 @@ class Game(models.Model):
|
||||
"""Display rankings by placement, best players first."""
|
||||
ordering = ('-event__start', '-id')
|
||||
|
||||
|
||||
def __str__(self):
|
||||
return _("Mai-Star Game with {0} from {1:%Y-%m-%d}").format(
|
||||
self.player_names, self.event.start
|
||||
@@ -143,7 +149,7 @@ class Game(models.Model):
|
||||
|
||||
class Ranking(models.Model):
|
||||
"""the player scores in the ladder for one season. """
|
||||
user = models.ForeignKey(settings.AUTH_USER_MODEL)
|
||||
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT)
|
||||
season = models.PositiveSmallIntegerField(_("Season"))
|
||||
placement = models.PositiveIntegerField(blank=True, null=True)
|
||||
avg_placement = models.PositiveSmallIntegerField(blank=True, null=True)
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
from datetime import date
|
||||
|
||||
from django.contrib import auth
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.urls import reverse
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.views import generic
|
||||
|
||||
|
||||
Reference in New Issue
Block a user