def judge_drawing(request, room_name): if request.user.is_active and request.user.is_authenticated() and request.method == 'POST': chosen_drawing = None for key, value in request.POST.items(): if value == 'Choose Drawing': chosen_drawing = UserAccount.find(key) game_room = GameInstance.get(room_name) user_scores = ScoreInstance.get_all_for_game(game_room) draw_instance = DrawInstance.get(chosen_drawing, game_room, game_room.current_round) all_drawings = DrawInstance.get_all_for_round(game_room, game_room.current_round) for drawing in all_drawings: draw_instance.was_round_winner = -1 for user in user_scores: user.seen_previous_result = False user.save() game_room.current_round+=1 game_room.current_phrase="" game_room.save() draw_instance.was_round_winner = 1 draw_instance.save() winner_score = ScoreInstance.get(chosen_drawing, game_room) winner_score.score+=1 winner_score.save() choose_next_judge(game_room) return HttpResponseRedirect('/game/room/' + room_name) return HttpResponseRedirect('/')
def kick_player(request, room_name): if request.user.is_active and request.user.is_authenticated(): for element in request.POST: if 'kick' in element: player_name = request.POST.get(element) remove_player(UserAccount.find(player_name), GameInstance.get(room_name)) return HttpResponseRedirect('/game/room/' + room_name) return HttpResponseRedirect('/')
def public_picture(request, round_number, room_name, player_name): target_user = UserAccount.find(player_name) target_game = GameInstance.get(room_name) draw_instance = DrawInstance.get_for_user_game_round(target_user, target_game, round_number) if target_user == None or target_game == None or draw_instance == None: return HttpResponseRedirect('/') return render(request, "game/public_picture.html", { 'round_number' : round_number, 'room_name' : room_name, 'player_name' : player_name, 'drawing' : draw_instance })
def create(request): if request.method == 'POST': # If the form has been submitted... form = CreateAccountForm(request.POST) try: if form.is_valid(): form.save() user = auth.authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password2']) auth.login(request, user) new_account = UserAccount.find(form.cleaned_data['username']) logger.info('User Create successful. User: %s', new_account) return HttpResponse('Success') else: logger.error('User Create failed. Invalid form.') raise Exception(form.errors.as_ul()) except Exception as ex: logger.error('User Create failed. Validation or Authentication failed.') #return render(request, "account/new_account.html", { 'errors' : ex.message }) return HttpResponse(ex.message) else: logger.error('User Create failed. Invalid form submission.') return HttpResponse('Account creation failed.')