コード例 #1
0
def save_bet(request, game_id, mode):

    new_bet = Bet()

    game = Game.objects.get(pk=game_id)
    user = request.user

    new_bet.game = game
    new_bet.user = user

    if mode == "live":
        try:
            new_bet.home_ft_score = request.POST["value[home_ft_score]"]
        except:
            new_bet.home_ft_score = None
        try:
            new_bet.visitor_ft_score = request.POST["value[visitor_ft_score]"]
        except:
            new_bet.visitor_ft_score = None
        try:
            new_bet.winner = request.POST["value[winner]"]
        except:
            new_bet.winner = None
    else:
        try:
            new_bet.home_ft_score = request.POST["home_ft_score"]
        except:
            new_bet.home_ft_score = None
        try:
            new_bet.visitor_ft_score = request.POST["visitor_ft_score"]
        except:
            new_bet.visitor_ft_score = None
        try:
            new_bet.winner = request.POST["winner"]
        except:
            new_bet.winner = None

    new_bet.save()
    return HttpResponseRedirect("/")
コード例 #2
0
def get_evident_bet(evident_user, game):
    evident_bet = Bet()
    bets = []
    users = User.objects.filter(groups__name="-money-")
    start_time = datetime(2012, 3, 1, 10, 0).replace(tzinfo=utc)
    evident_winner = 0
    for user in users:
        try:
            bet = Bet.objects.filter(game=game,
                                     user=user,
                                     time__range=(start_time,
                                                  game.time)).last()
            if bet.winner != None:
                evident_winner += int(bet.winner)
            bets.append((int(bet.home_ft_score), int(bet.visitor_ft_score)))
        except:
            print ""

    if not len(bets):
        return None

    evident_winner = int(round(float(7) / len(bets)))

    if game.id > settings.GROUP_GAMES:
        evident_bet.winner = evident_winner

    lst = Counter(bets).most_common()
    highest_count = max([i[1] for i in lst])
    values = [i[0] for i in lst if i[1] == highest_count]
    random.shuffle(values)
    evident_bet.home_ft_score = values[0][0]
    evident_bet.visitor_ft_score = values[0][1]
    evident_bet.user = evident_user
    evident_bet.game = game
    evident_bet.time = start_time
    evident_bet.save()
    return evident_bet