Skip to content

Commit 7b066f4

Browse files
committed
Automaticalls set primary flag when saving first club relation for person; Fix unicode problems in __unicode__ methods
1 parent 384b3c9 commit 7b066f4

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

Diff for: models.py

+17-9
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class League(models.Model):
6161
managers = models.ManyToManyField('Person', blank=True, related_name='leagues_managed', through='LeagueManagerRelation')
6262

6363
def __unicode__(self):
64-
return '{0} {1} {2}'.format(self.name, self.gender, self.age_group)
64+
return u'{0} {1} {2}'.format(self.name, self.gender, self.age_group)
6565

6666

6767
class LeagueTemplate(models.Model):
@@ -70,7 +70,7 @@ class LeagueTemplate(models.Model):
7070
age_group = models.CharField(max_length=20, choices=(('adults', _('adults')), ('juniors', _('juniors')), ('kids', _('kids'))))
7171

7272
def __unicode__(self):
73-
return '{0} {1} {2}'.format(self.name, self.gender, self.age_group)
73+
return u'{0} {1} {2}'.format(self.name, self.gender, self.age_group)
7474

7575

7676
class Group(models.Model):
@@ -82,7 +82,7 @@ class Group(models.Model):
8282
teams = models.ManyToManyField('Team', related_name='groups', blank=True)
8383

8484
def __unicode__(self):
85-
return '{0}, {1}, {2}, {3}'.format(self.name, self.league.name, self.league.gender, self.league.age_group, self.league.district.name)
85+
return u'{0}, {1}, {2}, {3}'.format(self.name, self.league.name, self.league.gender, self.league.age_group, self.league.district.name)
8686

8787

8888
class District(models.Model):
@@ -123,7 +123,7 @@ class Game(models.Model):
123123
players = models.ManyToManyField('Person', through='GamePlayerRelation')
124124

125125
def __unicode__(self):
126-
return '{0}/{1}/{2}: {3} {4} vs. {5} {6}'.format(self.start.year, self.start.month, self.start.day, self.home.club.name, self.home.name, self.away.club.name, self.away.name)
126+
return u'{0}/{1}/{2}: {3} {4} vs. {5} {6}'.format(self.start.year, self.start.month, self.start.day, self.home.club.name, self.home.name, self.away.club.name, self.away.name)
127127

128128

129129
class GameType(models.Model):
@@ -141,7 +141,7 @@ class Site(models.Model):
141141
number = models.IntegerField(unique=True, blank=True, null=True)
142142

143143
def __unicode__(self):
144-
return '{0}, {1} {2} (#{3})'.format(self.address, self.zip_code, self.city, self.number)
144+
return u'{0}, {1} {2} (#{3})'.format(self.address, self.zip_code, self.city, self.number)
145145

146146

147147
class GamePlayerRelation(models.Model):
@@ -267,15 +267,22 @@ def club_member_to_manager(sender, instance, created, **kwargs):
267267

268268

269269
def team_player_to_manager(sender, instance, created, **kwargs):
270-
managers = TeamManagerRelation.objects.filter(team=instance.club)
270+
managers = TeamManagerRelation.objects.filter(team=instance.team)
271271
if len(managers) == 0:
272-
TeamManagerRelation.objects.create(team=instance.club, manager=instance.player)
272+
TeamManagerRelation.objects.create(team=instance.team, manager=instance.player)
273273

274274

275275
def team_coach_to_manager(sender, instance, created, **kwargs):
276-
managers = TeamManagerRelation.objects.filter(team=instance.club)
276+
managers = TeamManagerRelation.objects.filter(team=instance.team)
277277
if len(managers) == 0:
278-
TeamManagerRelation.objects.create(team=instance.club, manager=instance.coach)
278+
TeamManagerRelation.objects.create(team=instance.team, manager=instance.coach)
279+
280+
281+
def club_primary_check(sender, instance, **kwargs):
282+
clubs = ClubMemberRelation.objects.filter(member=instance.member)
283+
284+
if len(clubs) == 0:
285+
instance.primary = True
279286

280287

281288
# Create API key for a new user
@@ -287,4 +294,5 @@ def team_coach_to_manager(sender, instance, created, **kwargs):
287294
post_save.connect(club_member_to_manager, sender=ClubMemberRelation)
288295
post_save.connect(team_player_to_manager, sender=TeamPlayerRelation)
289296
post_save.connect(team_coach_to_manager, sender=TeamCoachRelation)
297+
pre_save.connect(club_primary_check, sender=ClubMemberRelation)
290298
# m2m_changed.connect(set_club_by_team, sender=Team.players.through)

0 commit comments

Comments
 (0)