[docs]defsend_feedback_email(request,data):data["user"]=request.useremail=request.user.tj_emailifrequest.user.is_authenticatedelsef"unknown-{request.user}@tjhsst.edu"data["email"]=emaildata["remote_ip"]=request.META["HTTP_X_REAL_IP"]if"HTTP_X_REAL_IP"inrequest.METAelserequest.META.get("REMOTE_ADDR","")data["user_agent"]=request.META.get("HTTP_USER_AGENT")headers={"Reply-To":f"{email}; {settings.FEEDBACK_EMAIL}"}email_send_task.delay("feedback/email.txt","feedback/email.html",data,f"Feedback from {request.user}",[settings.FEEDBACK_EMAIL],headers)
[docs]@login_requireddefsend_feedback_view(request):ifrequest.method=="POST":form=FeedbackForm(request.POST)ifform.is_valid():data=form.cleaned_dataFeedback.objects.create(user=request.user,comments=data["comments"])send_feedback_email(request,data)messages.success(request,"Your feedback was sent. Thanks!")form=FeedbackForm()context={"form":form}returnrender(request,"feedback/form.html",context)