mirror of
https://gitlab.com/animath/si/plateforme-corres2math.git
synced 2025-07-05 15:23:52 +02:00
Create team detail page
This commit is contained in:
@ -1,8 +1,9 @@
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.db import transaction
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.views.generic import CreateView, FormView
|
||||
from django.views.generic import CreateView, FormView, DetailView, RedirectView
|
||||
|
||||
from participation.forms import TeamForm, JoinTeamForm
|
||||
from participation.models import Team
|
||||
@ -58,3 +59,18 @@ class JoinTeamView(LoginRequiredMixin, FormView):
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse_lazy("index")
|
||||
|
||||
|
||||
class MyTeamDetailView(LoginRequiredMixin, RedirectView):
|
||||
def get_redirect_url(self, *args, **kwargs):
|
||||
user = self.request.user
|
||||
registration = user.registration
|
||||
if registration.participates:
|
||||
if registration.team:
|
||||
return reverse_lazy("participation:team_detail", args=(registration.team_id,))
|
||||
raise PermissionDenied(_("You are not in a team."))
|
||||
raise PermissionDenied(_("You don't participate, so you don't have any team."))
|
||||
|
||||
|
||||
class TeamDetailView(LoginRequiredMixin, DetailView):
|
||||
model = Team
|
||||
|
Reference in New Issue
Block a user