def show_events_by_slug(request, slug): event = Event.objects.active().get(slug=slug) if Event.can_view_event(slug, request.user) is True: comments = Comment.objects.active().sort() comments = comments.filter(event=event).order_by('-created_at') form = CommentForm(request.POST or None) username_form = UserForm(request.POST or None) storage = messages.get_messages(request) for message in storage: pass final_users = [] final_team = [] if request.user.is_authenticated: if AccountDetails.objects.filter(user=request.user).exists(): users = AccountDetails.objects.get( user=request.user).friends.all() for user in users: if AccountDetails.objects.filter(user=user): details = AccountDetails.objects.get(user=user) user.details = details final_users.append(user) if request.method == 'POST': if form.is_valid(): comment = form.save(commit=False) comment.event = event comment.author = request.user comment.save() has_joined = Event.has_joined_event(request.user, slug) team = event.team_members.all() for user in team: if AccountDetails.objects.filter(user=user): details = AccountDetails.objects.get(user=user) user.details = details final_team.append(user) context = { 'event': event, 'comments': comments, 'form': form, 'has_joined': has_joined, 'guests': Event.get_guests(slug), 'users': final_users, 'team': final_team, 'is_team_member': Event.is_team_member(request.user, slug) } return render(request, 'events/event.html', context) error_message = "Event is not available yet\ or you don't have permission to view it." context = {'error_message': error_message} return render(request, 'CRUDops/error.html', context)