X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/ce02a06785b4ef96aa7aebc63641883a9ee491d4..243ac5a586da9e5abb87698306794b6cc173ded1:/src/newsletter/admin.py diff --git a/src/newsletter/admin.py b/src/newsletter/admin.py index bcb789761..7af7e0d52 100644 --- a/src/newsletter/admin.py +++ b/src/newsletter/admin.py @@ -1,21 +1,33 @@ -# -*- coding: utf-8 -*- -from django.conf.urls import url +# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# +from django.urls import path from django.contrib import admin from django.http.response import HttpResponse - -from newsletter.models import Subscription +from django.views.decorators.cache import never_cache +from modeltranslation.admin import TranslationAdmin +from newsletter.models import Subscription, Newsletter class SubscriptionAdmin(admin.ModelAdmin): + list_display = ('email', 'active') + list_filter = ('active',) + def get_urls(self): urls = super(SubscriptionAdmin, self).get_urls() my_urls = [ - url(r'^extract/$', self.extract_subscribers, name='extract_subscribers'), + path('extract/', self.extract_subscribers, name='extract_subscribers'), ] return my_urls + urls + @never_cache def extract_subscribers(self, request): - return HttpResponse(',\n'.join(Subscription.objects.values_list('email', flat=True)), content_type='text/plain') + active_subscriptions = Subscription.objects.filter(active=True) + return HttpResponse('\n'.join(active_subscriptions.values_list('email', flat=True)), + content_type='text/plain') admin.site.register(Subscription, SubscriptionAdmin) + + +admin.site.register(Newsletter, TranslationAdmin)