]> git.0d.be Git - django-panik-newsletter.git/commitdiff
add new json stat view
authorFrédéric Péters <fpeters@0d.be>
Wed, 30 Oct 2013 14:53:00 +0000 (15:53 +0100)
committerFrédéric Péters <fpeters@0d.be>
Wed, 30 Oct 2013 14:53:00 +0000 (15:53 +0100)
newsletter/urls.py
newsletter/views.py

index 5ee01b956778508b492eca21784e5e7e49756cd2..7cfa8235f6702c6199ac148016995d0864511c6a 100644 (file)
@@ -6,6 +6,7 @@ urlpatterns = patterns('',
     url(r'^$', 'newsletter.views.subscribe', name='newsletter-subscribe'),
     url(r'^thanks/$', 'newsletter.views.thanks', name='newsletter-thanks'),
     url(r'^(?P<token>[0-9a-f]{40})$', 'newsletter.views.confirmation', name='newsletter-confirmation'),
+    url(r'^stats/$', 'newsletter.views.stats'),
     url(r'^unsubscription/$', unsubscription),
 )
 
index 7b14d65c4c088ee37c036c687f9ca0673c49a592..d38cd34928f5b0a30621d396dfc8336fccd81f06 100644 (file)
@@ -21,6 +21,9 @@ from django.views.generic.base import TemplateView
 from django.views.generic.detail import DetailView
 from django.views.generic.list import ListView
 from django.views.generic.edit import CreateView, UpdateView
+from django.views.decorators.csrf import csrf_exempt
+
+from jsonresponse import to_json
 
 from .forms import SubscribeForm, NewsletterForm
 from .models import Subscriber, Newsletter
@@ -126,3 +129,9 @@ class NewsletterUpdateView(UpdateView):
         return super(NewsletterUpdateView, self).get_form(*args, **kwargs)
 
 newsletter_update = NewsletterUpdateView.as_view()
+
+
+@csrf_exempt
+@to_json('api')
+def stats(request) :
+    return {'registered': Subscriber.objects.filter(is_registered=True).count()}