def contact(request, event_slug): event = Event.objects.filter(slug__iexact=event_slug).first() if not event: return handler404(request) contact_message = ContactMessage() form = ContactMessageForm(request.POST or None, instance=contact_message) if request.POST: if form.is_valid(): contact_message = form.save() info = _("Message received from ") + contact_message.name + "\n" info += _("User email: ") + contact_message.email + "\n" contact_message.message = info + contact_message.message email = EmailMessage() email.subject = _("eventoL Contact Message from " + contact_message.name) email.body = contact_message.message email.from_email = contact_message.email email.to = [event.email] email.extra_headers = {'Reply-To': contact_message.email} email.send(fail_silently=False) event = Event.objects.filter(slug__iexact=event_slug).first() if not event: return handler404(request) contact_message.event = event contact_message.save() messages.success(request, _("The message has been sent. You will receive a reply by email")) return HttpResponseRedirect('/event/' + event_slug) messages.error(request, _("There was a problem sending your message. Please try again in a few minutes.")) return render(request, 'contact-message.html', update_event_info(event_slug, request, {'form': form}, event))