from django.shortcuts import render, redirect from source.apps.ctf import forms, models # Create your views here. async def view_homepage(request): return render(request, "ctf/homepage.html") async def view_teams(request): teams = [team async for team in models.Team.objects.all()] return render(request, "ctf/team_list.html", context={"teams": teams}) async def view_team_create(request): if request.method == "POST": form = forms.TeamForm(request.POST) if form.is_valid(): # TODO(Faraphel): additional password to prevent unwanted team creation ? await models.Team.objects.acreate(name=form.cleaned_data["name"]) return redirect("/") else: form = forms.TeamForm() return render(request, "ctf/team_create.html", context={"form": form}) def view_flags(request): flags = models.Flag.objects.all() return render(request, "ctf/flag_list.html", context={"flags": flags}) async def view_flag_submit(request): if request.method == "POST": form = forms.FlagForm(request.POST) if form.is_valid(): return redirect("/") else: form = forms.FlagForm() return render(request, "ctf/flag_submit.html", context={"form": form})