def get(self, request, event_id): user = request.user event = get_event_by_id(event_id) person = get_person_by_user(user) if user.pk else None is_registered = get_if_person_is_registered(person, event) is_favorite = get_if_event_is_fav(person, event) favorite = None inscrit = None if is_favorite: favorite = FavoriteEvent.objects.get(person=person, event=event) if user.pk else None if is_registered: inscrit = InscriptionEvent.objects.get(person=person, event=event) if user.pk else None events_caroussel = Event.objects.filter(category=event.category, event_date__gte=timezone.now()).exclude(pk=event_id) context = { 'user': user, 'person': person, 'event': event, 'is_registered': is_registered, 'is_favorite': is_favorite, 'favorite': favorite, 'inscrit': inscrit, 'events_caroussel' : events_caroussel, 'navigation_items': navigation.navigation_items(navigation.NAV_EVENEMENT), } return render(request, 'events/event_detail.html', context)
def get(self, request, event_id, *args, **kwargs): user = request.user person = get_person_by_user(user) event = get_event_by_id(event_id) favorite = FavoriteEvent(person=person, event=event) favorite.save() return redirect(reverse('description-event', kwargs={'event_id': event.pk}))
def get(self, request, event_id, *args, **kwargs): user = request.user person = get_person_by_user(user) event = get_event_by_id(event_id) is_registered = get_if_person_is_registered(person, event) if not is_registered or person != event.person: inscription = InscriptionEvent(person=person, event=event) inscription.save() return redirect(reverse('description-event', kwargs={'event_id': event.pk}))
def get(self, request, event_id): user = request.user person = get_person_by_user(user) event = get_event_by_id(event_id) form = EventForm(instance=event) context = { 'person': person, 'form': form, 'event': event, 'navigation_items': navigation.navigation_items(navigation.NAV_EVENEMENT), } return render(request, 'persons/events/my_events_form.html', context)
def post(self, request, event_id): user = request.user person = get_person_by_user(user) event = get_event_by_id(event_id) form = EventForm(instance=event, data=request.POST) if form.is_valid(): event = form.save(commit=False) event.person = person event.created_at = datetime.now() event.save() return redirect(reverse('profil-events')) else: form = EventForm(instance=event) context = { 'person': person, 'form': form, 'navigation_items': navigation.navigation_items(navigation.NAV_EVENEMENT), } return render(request, 'persons/events/my_events_form.html', context)
def get(self, request, event_id, *args, **kwargs): try: user = request.user person = get_person_by_user(user) event = get_event_by_id(event_id) person_event = get_person_by_id(event.person.pk) form = KarmaForm(data=request.POST) rating = request.GET.get('rating', 5) if form.is_valid(): karma = form.save(commit=False) karma.event = event karma.note = rating karma.person = person karma.save() note = Karma.objects.filter(event__person=event.person).aggregate(Avg('note')) person_event.note = note['note__avg'] person_event.save() return redirect(reverse('profil-finished-events')) else: return redirect(reverse('events')) except Event.DoesNotExist: raise Http404()
def get(self, request, event_id): event = get_event_by_id(event_id) event.delete() return redirect(reverse('profil-events'))