Exemplo n.º 1
0
def startGame(request):
    try:
        if request.body and request.is_ajax:
            data = json.loads(request.body)
            try:
                u1 = Participants.objects.get(username=data[0]['value'])
                u2 = Participants.objects.get(username=data[1]['value'])
            except Participants.DoesNotExist:
                raise Http404
            else:
                g = Game()
                g.user1 = str(u1.id)
                g.user2 = str(u2.id)
                g.cround = str(data[2]['value'])
                g.fen = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR"
                g.status = "pending"
                # Make Count Down Values Here
                g.save()

                response = HttpResponse(
                    json.dumps({
                        'gameid': str(g.id),
                        'route': 'socket',
                        'type': 'startGame'
                    }))
                #else:
                #	response = HttpResponse(json.dumps({ 'gameid' : str(g.id), 'route' : 'socket', 'type' : 'startGameNoTime' }))
        else:
            raise Http404
    except:
        print sys.exc_info()[0]
        response = HttpResponse(json.dumps({'error': 'Internal Error'}))
    return response
Exemplo n.º 2
0
def create_game(request):
    if request.method == "POST":
        form = CreateGameForm(request.POST, request.FILES)
        if form.is_valid():
            p = Game(white_player=form.cleaned_data["white_player"],
                    black_player=form.cleaned_data["black_player"],
                    owner=users.get_current_user())
            p.put()
            return HttpResponseRedirect(reverse("chess.views.list_games"))
    else:
        form = CreateGameForm()
    return render_to_response("game_form.html", {"form": form})
Exemplo n.º 3
0
def update_moves(request, key):
    if request.method == "POST":
        form = UpdateMovesForm(request.POST)
        if form.is_valid():
            g = Game.get(key)
            pgnfile = db.Query(PGNFile).filter("filename",
                    form.cleaned_data["pgnfile"])[0]
            g.moves = pgnfile.filecontent
            g.put()

            return HttpResponseRedirect(reverse("chess.views.list_games"))
    else:
        form = UpdateMovesForm()
    return render_to_response("updatemoves_form.html", {"form": form,
        "game": Game.get(key)})
Exemplo n.º 4
0
def show_game(request, key):
    return object_detail(request, Game.all(), key)