diff --git a/game/views.py b/game/views.py index 9ee29ca..d5f3b7d 100644 --- a/game/views.py +++ b/game/views.py @@ -139,19 +139,24 @@ class GroupAddMemberView(MemberFilterMixin, SingleObjectMixin, View): group = self.get_object() if not group.is_leader(request.user): raise PermissionDenied() - username = request.POST.get("username") - user = User.objects.get(username=username) - if user == group.owner: - messages.add_message( - request, messages.WARNING, f"{user} est le propriétaire du groupe." - ) - return redirect(group) - if user in group.members.all(): - messages.add_message( - request, messages.WARNING, f"{user} est déjà membre du groupe." - ) + usernames = request.POST.get("username") + for username in usernames.split(): + user = User.objects.filter(username=username).first() + if not user: + messages.add_message( + request, messages.ERROR, f"{username} n'existe pas." + ) + elif user == group.owner: + messages.add_message( + request, messages.WARNING, f"{user} est le propriétaire du groupe." + ) + elif user in group.members.all(): + messages.add_message( + request, messages.WARNING, f"{user} est déjà membre du groupe." + ) + else: + group.members.add(user) - group.members.add(user) return redirect(group)