def post(self, request, event_code): if not belongs_to_group(request.user, EventVolunteer.GROUP_NAME): raise PermissionDenied() event = get_object_or_404(Event, code=event_code) form = WorkshopForm(request.POST, instance=event) if form.is_valid(): form.save() return redirect('index') return render(request, 'EventManagement/update_event.html', { 'form': form, 'user': request.user, 'event': event, 'slug': event_code })
def get(self, request, event_code): if not belongs_to_group(request.user, EventVolunteer.GROUP_NAME): raise PermissionDenied() event_v = EventVolunteer.objects.get(user=request.user) event = get_object_or_404(Workshop, code=event_code) if event.organizer != event_v.organizer: raise PermissionDenied() form = WorkshopForm(instance=event) return render(request, 'EventManagement/update_event.html', { 'form': form, 'user': request.user, 'event': event, 'slug': event_code })
def admin_panel(request): context = { 'event_list': Event.objects.all(), 'workshop_list': Workshop.objects.all(), 'user': request.user } if belongs_to_group(request.user, EventVolunteer.GROUP_NAME): event_volunteer = EventVolunteer.objects.get(user=request.user) context['event_volunteer'] = event_volunteer org_events = Event.objects.filter(organizer=event_volunteer.organizer) context['event_registrations'] = [] for i, event in enumerate(org_events): context['event_registrations'].append({ 'code': event.code, 'name': event.name, 'list': [] }) registrations = Registration.objects.filter(event=event) for reg in registrations: context['event_registrations'][i]['list'].append({ 'profile': reg.profile.serialize, 'additional_data': reg.additional_data, }) org_workshops = Workshop.objects.filter( organizer=event_volunteer.organizer) context['workshop_registrations'] = [] for i, event in enumerate(org_workshops): context['workshop_registrations'].append({ 'code': event.code, 'name': event.name, 'list': [] }) registrations = WorkshopRegistration.objects.filter(workshop=event) for reg in registrations: context['workshop_registrations'][i]['list'].append({ 'profile': reg.profile.serialize, 'additional_data': reg.additional_data, }) return render(request, 'EventManagement/event_volunteer.html', context) elif belongs_to_group(request.user, RegistrationDesk.GROUP_NAME): event_volunteer = RegistrationDesk.objects.get(user=request.user) context['event_volunteer'] = event_volunteer context['p_form'] = ProfileForm() id_code = request.session.get('id_code', None) print(id_code) if id_code is not None: del request.session['id_code'] context['id_code'] = id_code return render(request, 'EventManagement/registration_admin.html', context) elif belongs_to_group(request.user, RituAdmin.GROUP_NAME): context['admin'] = RituAdmin.objects.get(user=request.user) org_events = Event.objects.all() context['event_registrations'] = [] for i, event in enumerate(org_events): context['event_registrations'].append({ 'code': event.code, 'name': event.name, 'list': [] }) registrations = Registration.objects.filter(event=event) for reg in registrations: context['event_registrations'][i]['list'].append({ 'profile': reg.profile.serialize, 'additional_data': reg.additional_data, }) org_workshops = Workshop.objects.all() context['workshop_registrations'] = [] for i, event in enumerate(org_workshops): context['workshop_registrations'].append({ 'code': event.code, 'name': event.name, 'list': [] }) registrations = WorkshopRegistration.objects.filter(workshop=event) for reg in registrations: context['workshop_registrations'][i]['list'].append({ 'profile': reg.profile.serialize, 'additional_data': reg.additional_data, }) return render(request, "EventManagement/ritu_admin_admin.html", context) else: raise PermissionDenied("Not a authorized to view the page")