def add_food(request, season_id): season = Season.objects.get(id=season_id) league = season.league comment = 'GET' members = league.members.all() if request.method == 'POST': comment = request.POST date = request.POST['date'] try: date = datetime.strptime(date, '%Y-%m-%d').date() except ValueError: comment = 'invalid date' date = None if date: player = Player.objects.get(id=request.POST['player']) fb = FoodBonus( player=player, date=date, season=season ) fb.save() comment = 'Food bonus saved for %s on %s.' % (player, date) context = { 'season': season, 'league': league, 'comment': comment, 'members': members } return render(request, 'leaguemanager/add_food.html', context)
def add_scoresheet(request, season_id): comment = ['GET'] season = Season.objects.get(id=season_id) league = season.league players = league.members.all().order_by('name') corp_IDs = corp_ID_list() corp_IDs.pop(-1) runner_IDs = runner_ID_list() runner_IDs.pop(-1) if request.method == 'POST': comment = ['POST', request.POST] try: date = request.POST['gamedate'] date = datetime.strptime(date, '%Y-%m-%d').date() except ValueError: comment.append('invalid date') date = None if date: id1 = request.POST['player1'] id2 = request.POST['player2'] if id1 == id2: comment.append('You must choose different players.') else: player1 = Player.objects.get(id=request.POST['player1']) player2 = Player.objects.get(id=request.POST['player2']) # add food bonuses to the database if request.POST['player_1_food'] == 'True': try: fb = FoodBonus.objects.get(player=player1, season=season, date=date) comment.append('%s already exists!' % fb) except FoodBonus.DoesNotExist: fb = FoodBonus(player=player1, season=season, date=date) fb.save() comment.append('FoodBonus saved for %s on %s' % (player1, date)) if request.POST['player_2_food'] == 'True': try: fb = FoodBonus.objects.get(player=player2, season=season, date=date) comment.append('%s already exists!' % fb) except FoodBonus.DoesNotExist: fb = FoodBonus(player=player2, season=season, date=date) fb.save() comment.append('FoodBonus saved for %s on %s' % (player2, date)) # save game 1 outcome = request.POST['game1outcome'] player1id = request.POST['player1game1id'] player2id = request.POST['player2game1id'] v1 = (outcome == 'notplayed') v2 = (player1id == '0') v3 = (player2id == '0') v4 = ((player1id in corp_IDs) and (player2id in corp_IDs)) v5 = ((player1id in runner_IDs) and (player2id in runner_IDs)) if v1 or v2 or v3 or v4 or v5: comment.append('Game 1 was not played or invalid') else: comment.append('Game 1 valid') if ((player1id in corp_IDs) and (player2id in runner_IDs)): corp_player = player1 corp_id = player1id runner_player = player2 runner_id = player2id if outcome == 'player1agendavictory': outcome = 'corp agenda victory' if outcome == 'player2agendavictory': outcome = 'runner agenda victory' else: corp_player = player2 corp_id = player2id runner_player = player1 runner_id = player1id if outcome == 'player1agendavictory': outcome = 'runner agenda victory' if outcome == 'player2agendavictory': outcome = 'corp agenda victory' g = Game( season=season, date=date, outcome=outcome, corp_player=corp_player, runner_player=runner_player, corp_ID=corp_id, runner_ID=runner_id ) g.save() comment.append('Game 1 saved.') # save game 2 outcome = request.POST['game2outcome'] player1id = request.POST['player1game2id'] player2id = request.POST['player2game2id'] v1 = (outcome == 'notplayed') v2 = (player1id == '0') v3 = (player2id == '0') v4 = ((player1id in corp_IDs) and (player2id in corp_IDs)) v5 = ((player1id in runner_IDs) and (player2id in runner_IDs)) if v1 or v2 or v3 or v4 or v5: comment.append('Game 2 was not played or invalid') else: comment.append('Game 2 valid') if ((player1id in corp_IDs) and (player2id in runner_IDs)): corp_player = player1 corp_id = player1id runner_player = player2 runner_id = player2id if outcome == 'player1agendavictory': outcome = 'corp agenda victory' if outcome == 'player2agendavictory': outcome = 'runner agenda victory' else: corp_player = player2 corp_id = player2id runner_player = player1 runner_id = player1id if outcome == 'player1agendavictory': outcome = 'runner agenda victory' if outcome == 'player2agendavictory': outcome = 'corp agenda victory' g = Game( season=season, date=date, outcome=outcome, corp_player=corp_player, runner_player=runner_player, corp_ID=corp_id, runner_ID=runner_id ) g.save() comment.append('Game 2 saved.') # save game 3 outcome = request.POST['game3outcome'] player1id = request.POST['player1game3id'] player2id = request.POST['player2game3id'] v1 = (outcome == 'notplayed') v2 = (player1id == '0') v3 = (player2id == '0') v4 = ((player1id in corp_IDs) and (player2id in corp_IDs)) v5 = ((player1id in runner_IDs) and (player2id in runner_IDs)) if v1 or v2 or v3 or v4 or v5: comment.append('Game 3 was not played or invalid') else: comment.append('Game 3 valid') if ((player1id in corp_IDs) and (player2id in runner_IDs)): corp_player = player1 corp_id = player1id runner_player = player2 runner_id = player2id if outcome == 'player1agendavictory': outcome = 'corp agenda victory' if outcome == 'player2agendavictory': outcome = 'runner agenda victory' else: corp_player = player2 corp_id = player2id runner_player = player1 runner_id = player1id if outcome == 'player1agendavictory': outcome = 'runner agenda victory' if outcome == 'player2agendavictory': outcome = 'corp agenda victory' g = Game( season=season, date=date, outcome=outcome, corp_player=corp_player, runner_player=runner_player, corp_ID=corp_id, runner_ID=runner_id ) g.save() comment.append('Game 3 saved.') # save game 4 outcome = request.POST['game4outcome'] player1id = request.POST['player1game4id'] player2id = request.POST['player2game4id'] v1 = (outcome == 'notplayed') v2 = (player1id == '0') v3 = (player2id == '0') v4 = ((player1id in corp_IDs) and (player2id in corp_IDs)) v5 = ((player1id in runner_IDs) and (player2id in runner_IDs)) if v1 or v2 or v3 or v4 or v5: comment.append('Game 4 was not played or invalid') else: comment.append('Game 4 valid') if ((player1id in corp_IDs) and (player2id in runner_IDs)): corp_player = player1 corp_id = player1id runner_player = player2 runner_id = player2id if outcome == 'player1agendavictory': outcome = 'corp agenda victory' if outcome == 'player2agendavictory': outcome = 'runner agenda victory' else: corp_player = player2 corp_id = player2id runner_player = player1 runner_id = player1id if outcome == 'player1agendavictory': outcome = 'runner agenda victory' if outcome == 'player2agendavictory': outcome = 'corp agenda victory' g = Game( season=season, date=date, outcome=outcome, corp_player=corp_player, runner_player=runner_player, corp_ID=corp_id, runner_ID=runner_id ) g.save() comment.append('Game 4 saved.') context = { 'season': season, 'league': league, 'comment': comment, 'players': players, 'runner_IDs': runner_IDs, 'corp_IDs': corp_IDs } return render(request, 'leaguemanager/add_scoresheet.html', context)