def update(self, request, *args, **kwargs): self.object = self.get_object_or_none() season_id = request.DATA.get('season', None) team_id = request.DATA.get('team', None) season = None team = None if season_id: try: season = common.Season.objects.get(id=season_id) common.add_player_to_season(player=self.object, season=season) except common.PermissionsException as e: return Response({'error': e.message}, status.HTTP_500_INTERNAL_SERVER_ERROR) except common.Season.DoesNotExist: return Response({}, status.HTTP_404_NOT_FOUND) if season_id and team_id: team = common.Team.objects.get(id=team_id) try: common.add_player_to_team(user=request.user, player=self.object, season=season, team=team) except common.PermissionsException as e: return Response({'error': e.message}, status.HTTP_500_INTERNAL_SERVER_ERROR) except common.Team.DoesNotExist: return Response({}, status.HTTP_404_NOT_FOUND) serializer = self.get_serializer(self.object) return Response(serializer.data)
def test_gender_rules(self): self.assertRaisesMessage( common.PermissionsException, common.PermissionsException.MSG_ELIGIBLE, common.add_player_to_season, player=self.player1, season=self.season_womens, ) common.add_player_to_season(player=self.player2, season=self.season_womens)
def add_players(ranked_players, pick_order): if not isinstance(ranked_players, list): ranked_players = ranked_players.iterator() # assuming queryset while True: for pick in pick_order: team = pick.team try: ranked_player = next(ranked_players) except StopIteration: return common.add_player_to_season(ranked_player.player, season=rankset.season) common.add_player_to_team( user=ranked_player.player, player=ranked_player.player, team=team, season=rankset.season ) if serpentine: pick_order.reverse()