def index(request): games = Game.objects.all() if request.method == 'POST': new_game = Game() form = GameForm(request.POST, instance=new_game) if form.is_valid(): try: form.save() new_game.add_player(request.user, True) except Exception: new_game.delete() messages.error(request, "Usted ya pertenece a otra partida") return render(request, "truco/index.html", { 'games': games, 'form': form, }) messages.success(request, "Partida creada exitosamente") return HttpResponseRedirect( reverse('truco:room', args=(new_game.id, ))) else: messages.error(request, "Error al crear partida") else: form = GameForm() return render(request, "truco/index.html", {'games': games, 'form': form})
def new(request): game_form = GameForm(request.user) screenshot_form = formset_factory(ScreenshotForm, extra=4, min_num=4, max_num=8) if request.method == "POST": game_form = GameForm(request.user, request.POST, request.FILES) screenshot_form = screenshot_form(request.POST, request.FILES) if game_form.is_valid(): game = game_form.save() if screenshot_form.is_valid(): for scf in screenshot_form: action = scf.save(commit=False) if not action.image: continue action.game = game action.save() messages.add_message(request, messages.SUCCESS, "New game has been added successfully.") return redirect(reverse('games_index')) else: game.delete() messages.add_message(request, messages.ERROR, "Add new game failed. Check your screenshots.") else: messages.add_message(request, messages.ERROR, "Add new game failed. Check your game data.") data = {'game_form': game_form, 'screenshot_form': screenshot_form} return render(request, 'games/new.html', data)
def get(self, request): form = GameForm(request.GET) if form.is_valid(): game = form.get_game() return self.render_to_response({"game": [game]}) else: return self.render_to_response({"request_error": form.errors, "game": []})
def get(self, request): form = GameForm(request.GET) if form.is_valid(): game = form.get_game() return self.render_to_response({"game": [game]}) else: return self.render_to_response({ "request_error": form.errors, "game": [] })
def add_game(request): user = request.user old_game = user.get_current_game() if old_game: return redirect('main:index') form = GameForm(request.POST or None) if form.is_valid(): game = form.save() game.generate_map() game.add_user(request.user) return redirect('main:index') return dict(form=form)
def _edit(request, game_id): if game_id == None: game = None else: game = get_object_or_404(GameInfoModel, pk=game_id) if request.POST: form = GameForm(request.POST, instance=game) # this line is gonna be iffy if form.is_valid(): game = form.save() return HttpResponseRedirect(reverse('featured_games-list')) else: form = GameForm(instance=game) return render(request, "featured_games/edit.html", { "chunk_size": settings.CHUNK_SIZE, "form": form, })
def game_create_direct(request, timeframe_id, location_id): timeframe = get_object_or_404(Timeframe, pk=timeframe_id) location = get_object_or_404(Location, pk=location_id) if request.method == 'POST': form = GameForm(request.POST) if form.is_valid(): form.save() return redirect('tournament_saved') else: form = GameForm(initial={ 'time': timeframe, 'location': location, }) return render(request, 'habatu/game_form.html', { 'form': form, })
def _edit(request, game_id): """ Edit or create a game """ if game_id == None: game = None else: game = get_object_or_404(Game, pk=game_id) if request.method == "POST": form = GameForm(request.POST, instance=game) if form.is_valid(): form.save(user=request.user) return HttpResponseRedirect(reverse("games-detail", args=(file.pk,))) else: form = GameForm(instance=game) return render(request, 'games/edit.html', { "game": game, "form": form, })