def edit_team(request, team_id): """Return a team edit view, or handle the form submission.""" # TODO: if user turns off invitation-required, let everyone in who had outstanding membership requests team = get_object_or_404(Team, pk=team_id) if team.owner_id is None or team.owner_id != request.user.id: raise SuspiciousOperation(_("User is not the owner of the team")) if request.method == "POST": form = TeamCreateForm(request.POST, instance=team) if form.is_valid(): form.save() messages.success(request, _("Updated team information")) return HttpResponseRedirect(reverse("openach:view_team", args=(team.id,))) else: form = TeamCreateForm(instance=team) return render(request, "teams/edit_team.html", context={"team": team, "form": form})
def create_team(request): """Return a team creation view, or handle the form submission.""" if request.method == 'POST': form = TeamCreateForm(request.POST) if form.is_valid(): with transaction.atomic(): team = form.save(commit=False) team.owner = request.user team.creator = request.user team.save() team.members.add(request.user) team.save() return HttpResponseRedirect(reverse('openach:view_team', args=(team.id,))) else: form = TeamCreateForm() return render(request, 'teams/create_team.html', {'form': form})