X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/de08100bad0d82b2823453ecccaa66fd7521cd41..2c8cbdedff9b723bd481e51d3aea771dd93fee7a:/src/newsletter/views.py diff --git a/src/newsletter/views.py b/src/newsletter/views.py index 847530e16..11256ca8a 100644 --- a/src/newsletter/views.py +++ b/src/newsletter/views.py @@ -1,9 +1,43 @@ -# -*- coding: utf-8 -*- -from django.shortcuts import render -from django.utils.translation import ugettext_lazy as _ +# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# +from django.http.response import HttpResponseRedirect +from django.shortcuts import render, get_object_or_404 +from django.urls import reverse +from django.utils.translation import gettext_lazy as _ +from newsletter.forms import SubscribeForm, Newsletter + + +def subscribe_form(request, slug=''): + newsletter = get_object_or_404(Newsletter, slug=slug) + new_layout = request.EXPERIMENTS['layout'].value + if request.POST: + form = SubscribeForm(newsletter, request.POST) + if form.is_valid(): + form.save() + return HttpResponseRedirect(reverse('subscribed')) + else: + form = SubscribeForm(newsletter) + + if new_layout: + template_name = 'newsletter/2022/subscribe_form.html' + form.template_name = '2022/form.html' + else: + template_name = 'newsletter/subscribe_form.html' + return render(request, template_name, { + 'page_title': newsletter.page_title, + 'form': form, + }) + + +def subscribed(request): + new_layout = request.EXPERIMENTS['layout'].value + if new_layout: + template_name = 'newsletter/2022/subscribed.html' + else: + template_name = 'newsletter/subscribed.html' + return render(request, template_name, { + 'page_title': _('Subscribed'), + }) -def unsubscribe(request): - return render(request, 'newsletter/unsubscribe.html', { - 'page_title': _(u'Unsubscribe'), - }) \ No newline at end of file