Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @login_required_message
- @login_required
- def student_registrations(request):
- registrations = Registration.objects.filter(student=request.user.student).order_by(
- "registration_date"
- )
- # paginate the registrations
- paginated_registrations = Paginator(registrations, 2)
- page_list = request.GET.get("page")
- paginated_registrations = paginated_registrations.get_page(page_list)
- context = {
- "title": "My Registrations",
- "paginated_registrations": paginated_registrations,
- }
- return render(request, "studentregistration/registrations.html", context)
- @login_required_message
- @login_required
- def register(request, code):
- module = get_object_or_404(Module, code=code)
- # incase user tries to re-register buy copying the register url
- registration, created = Registration.objects.get_or_create(
- module=module, student=request.user.student
- )
- if created:
- messages.success(request, f"Successfully registered to {module.name}")
- else:
- messages.success(request, f"You've already registered to {module.name}")
- # redirect to previous page that sent user here
- # or build the module page url and redirect user there
- module_page = reverse("studentregistration:module_details", args=[module.code])
- redirect_to = request.META.get("HTTP_REFERER", module_page)
- return redirect(redirect_to)
- @login_required_message
- @login_required
- def unregister(request, code):
- registration = get_object_or_404(
- Registration, module__code=code, student=request.user.student
- )
- module = registration.module
- if request.method == "POST":
- registration.delete()
- messages.success(request, f"Successfully unregistered from {module.name}")
- return redirect(
- reverse("studentregistration:module_details", args=[module.code])
- )
- # module_page = reverse("studentregistration:module_details", args=[module.code])
- # redirect_to = request.META.get("HTTP_REFERER", module_page)
- # return redirect(redirect_to)
- context = {"title": "Unregister", "module": module, "registration": registration}
- return render(request, "studentregistration/unregister.html", context)
- def error_404(request, exception):
- return render(request, "studentregistration/404.html", {"title": "404 Error"})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement