def read(self, request, group_id=None, race_id=None): if race_id: try: race = Race.objects.get(pk=race_id) except Race.DoesNotExist: return rc.NOT_FOUND qs = race.player_set.all() elif group_id: try: group = PlayerGroup.objects.get(pk=group_id) except PlayerGroup.DoesNotExist: return rc.NOT_FOUND qs = group.players.all() else: qs = Player.objects.all() qs = qs.order_by('-points') return [ dict(first_name=p.user.first_name, last_name=p.user.last_name, id=p.id, points=p.points, level=p.level_no, avatar=player_avatar(p), display_name=unicode(p)) for p in qs ]
def to_dict(self, player): return dict(first_name=player.user.first_name, last_name=player.user.last_name, id=player.id, points=player.points, level=player.level_no, avatar=player_avatar(player), display_name=unicode(player))
def read(self, request, player_id=None): if player_id: try: player = Player.objects.get(pk=player_id) except Player.DoesNotExist: return rc.NOT_FOUND else: try: player = request.user.get_profile() except Player.DoesNotExist: return rc.NOT_FOUND level = { 'name': player.level.name, 'title': player.level.title, 'image': player.level.image, 'id': player.level.id, } if player.level else {} group = player.group gold = player.coins['gold'] if 'gold' in player.coins.keys() else 0 topuser = player.get_extension(TopUser) return { 'username': player.user.username, 'nickname': player.nickname, 'first_name': player.user.first_name, 'last_name': player.user.last_name, 'email': player.user.email, 'avatar': player_avatar(player), 'points': player.points, 'gold': gold, 'race': player.race_name, 'race_slug': player.race.name.lower() if player.race and player.race.name else '', 'race_id': player.race.id if player.race else 0, 'group': group, 'level_no': player.level_no, 'level': level, 'level_progress': God.get_level_progress(player), 'rank': topuser.position, }
def read(self, request, group_id=None, race_id=None): if race_id: try: race = Race.objects.get(pk=race_id) except Race.DoesNotExist: return rc.NOT_FOUND qs = race.player_set.all() elif group_id: try: group = PlayerGroup.objects.get(pk=group_id) except PlayerGroup.DoesNotExist: return rc.NOT_FOUND qs = group.players.all() else: qs = Player.objects.all() qs = qs.order_by('-points') return [dict(first_name=p.user.first_name, last_name=p.user.last_name, id=p.id, points=p.points, level=p.level_no, avatar=player_avatar(p), display_name=unicode(p)) for p in qs]
def read(self, request, player_id=None): if player_id: try: player = Player.objects.get(pk=player_id) except Player.DoesNotExist: return rc.NOT_FOUND else: try: player = request.user.get_profile() except Player.DoesNotExist: return rc.NOT_FOUND level = { 'name': player.level.name, 'title': player.level.title, 'image': player.level.image, 'id': player.level.id, } if player.level else {} group = player.group gold = player.coins['gold'] if 'gold' in player.coins.keys() else 0 topuser = player.get_extension(TopUser) return {'username': player.user.username, 'nickname': player.nickname, 'first_name': player.user.first_name, 'last_name': player.user.last_name, 'email': player.user.email, 'avatar': player_avatar(player), 'points': player.points, 'gold': gold, 'race': player.race_name, 'race_slug': player.race.name.lower() if player.race and player.race.name else '', 'race_id': player.race.id if player.race else 0, 'group': group, 'level_no': player.level_no, 'level': level, 'level_progress': God.get_level_progress(player), 'rank': topuser.position, }