X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/98e12313596c58738fc7e3eeaccfde202b91ef2a..dd425f4b68f52cd5ac634104780cb48998af9562:/apps/suggest/views.py diff --git a/apps/suggest/views.py b/apps/suggest/views.py index cd733a840..1fcb3363d 100644 --- a/apps/suggest/views.py +++ b/apps/suggest/views.py @@ -2,16 +2,20 @@ # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. # +from django.core.mail import send_mail, mail_managers +from django.core.urlresolvers import reverse +from django.core.validators import email_re from django.http import HttpResponse, HttpResponseRedirect +from django.utils.translation import ugettext as _ from django.views.decorators import cache from django.views.decorators.http import require_POST -from django.utils.translation import ugettext as _ +from django.contrib.sites.models import Site from suggest import forms from suggest.models import Suggestion # FIXME - shouldn't be in catalogue -from catalogue.views import LazyEncoder +from catalogue.views import LazyEncoder #@require_POST @@ -19,19 +23,42 @@ from catalogue.views import LazyEncoder def report(request): suggest_form = forms.SuggestForm(request.POST) if suggest_form.is_valid(): - author = suggest_form.cleaned_data['author'] - email = suggest_form.cleaned_data['email'] - title = suggest_form.cleaned_data['title'] + contact = suggest_form.cleaned_data['contact'] description = suggest_form.cleaned_data['description'] - suggestion = Suggestion(author=author, email=email, title=title, + suggestion = Suggestion(contact=contact, description=description, ip=request.META['REMOTE_ADDR']) if request.user.is_authenticated(): suggestion.user = request.user suggestion.save() + mail_managers(u'Nowa sugestia na stronie WolneLektury.pl', u'''\ +Zgłoszono nową sugestię w serwisie WolneLektury.pl. +http://%(site)s%(url)s + +Użytkownik: %(user)s +Kontakt: %(contact)s + +%(description)s''' % { + 'site': Site.objects.get_current().domain, + 'url': reverse('admin:suggest_suggestion_change', args=[suggestion.id]), + 'user': str(request.user) if request.user.is_authenticated() else '', + 'contact': contact, + 'description': description, + }, fail_silently=True) + + if email_re.match(contact): + send_mail(u'[WolneLektury] ' + _(u'Thank you for your suggestion.'), + _(u"""\ +Thank you for your comment on WolneLektury.pl. +The suggestion has been referred to the project coordinator.""") + +u""" + +-- +""" + _(u'''Message sent automatically. Please do not reply.'''), + 'no-reply@wolnelektury.pl', [contact], fail_silently=True) + response_data = {'success': True, 'message': _('Report was sent successfully.')} else: response_data = {'success': False, 'errors': suggest_form.errors} - print LazyEncoder(ensure_ascii=False).encode(response_data) return HttpResponse(LazyEncoder(ensure_ascii=False).encode(response_data))