コード例 #1
0
def game_request(request):
    if not request.team.final:
        messages.error(request, _('your team must be final'))
        return HttpResponseRedirect(reverse('teams_list') + '?final=1')

    if 'team_id' not in request.POST:
        return HttpResponseBadRequest()

    try:
        team = Team.objects.get(id=request.POST.get('team_id'))
    except Team.DoesNotExist:
        raise Http404()

    game_config_id = request.POST.get('config_id')
    game_config = GameConfiguration.objects.get(id=game_config_id)
    if not game_config.is_public:
        return HttpResponseForbidden()

    wait = GameRequest.create(requester=request.team, requestee=team, game_config=game_config)
    if wait:
        messages.error(request, _('you must wait %d minutes before another request') % wait)
        return HttpResponseRedirect(reverse('teams_list') + '?final=1')

    messages.info(request, _('Challenged the team successfully'))
    return redirect('my_games')
コード例 #2
0
ファイル: views.py プロジェクト: AwesDea/AIC_mezzanine_site
def game_request(request):
    if not request.team.final:
        messages.error(request, _('your team must be final'))
        return HttpResponseRedirect(reverse('teams_list') + '?final=1')

    if 'team_id' not in request.POST:
        return HttpResponseBadRequest()

    try:
        team = Team.objects.get(id=request.POST.get('team_id'))
    except Team.DoesNotExist:
        raise Http404()

    game_config_id = request.POST.get('config_id')
    game_config = GameConfiguration.objects.get(id=game_config_id)
    if not game_config.is_public:
        return HttpResponseForbidden()

    wait = GameRequest.create(requester=request.team,
                              requestee=team,
                              game_config=game_config)
    if wait:
        messages.error(
            request,
            _('you must wait %d minutes before another request') % wait)
        return HttpResponseRedirect(reverse('teams_list') + '?final=1')

    messages.info(request, _('Challenged the team successfully'))
    return redirect('my_games')
コード例 #3
0
def teams(request):
    teams_list = Team.objects.exclude(show=False)
    if request.GET.get('final', '0') == '1':
        teams_list = teams_list.filter(final=True)

    show_friendly_button = False
    wait_time = 0

    if request.GET.get('submitted', '0') == '1':
        teams_list = teams_list.filter(final=True, submit__status=3).distinct()
        if hasattr(request.user, 'team') and \
                request.user.team and \
                request.user.team.final and \
                request.user.team.has_successful_submit:
            show_friendly_button = True
            wait_time = GameRequest.check_last_time(request.user.team)
            if wait_time:
                show_friendly_button = False

    public_configs = GameConfiguration.objects.filter(is_public=True)

    return render(request, 'custom/teams_list.html', {
        'teams': teams_list,
        'show_friendly_button': show_friendly_button,
        'wait_time': wait_time,
        'public_configurations': public_configs,
    })
コード例 #4
0
ファイル: views.py プロジェクト: AwesDea/AIC_mezzanine_site
def teams(request):
    teams_list = Team.objects.exclude(show=False)
    if request.GET.get('final', '0') == '1':
        teams_list = teams_list.filter(final=True)

    show_friendly_button = False
    wait_time = 0

    if request.GET.get('submitted', '0') == '1':
        teams_list = teams_list.filter(final=True, submit__status=3).distinct()
        if hasattr(request.user, 'team') and \
                request.user.team and \
                request.user.team.final and \
                request.user.team.has_successful_submit:
            show_friendly_button = True
            wait_time = GameRequest.check_last_time(request.user.team)
            if wait_time:
                show_friendly_button = False

    public_configs = GameConfiguration.objects.filter(is_public=True)

    return render(
        request, 'custom/teams_list.html', {
            'teams': teams_list,
            'show_friendly_button': show_friendly_button,
            'wait_time': wait_time,
            'public_configurations': public_configs,
        })