From 607a480a9738b9b5aeb9baeb521ca2c33d83695c Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Mon, 16 Jan 2012 14:27:43 -0800 Subject: [PATCH] Mixin for grabbing the api info from the settings. --- djrill/views.py | 26 ++++++++++++++++---------- settings/base.py | 4 ++-- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/djrill/views.py b/djrill/views.py index c877545..11f6744 100644 --- a/djrill/views.py +++ b/djrill/views.py @@ -10,21 +10,27 @@ except ImportError: raise ImportError("Install the damn requirements!") -class DjrillIndexView(View): +class DjrillApiMixin(object): + """ + Simple Mixin to grab the api info from the settings file. + """ + def __init__(self, *args, **kwargs): + self.api_key = getattr(settings, "MANDRILL_API_KEY", None) + self.api_url = getattr(settings, "MANDRILL_API_URL", None) - def get(self, request): - #api_key = getattr(settings.MANDRILL_API_KEY, None) - #api_url = getattr(settings.MANDRILL_API_URL) - api_key = settings.MANDRILL_API_KEY or None - api_url = settings.MANDRILL_API_URL or None - if not api_key: + if not self.api_key: raise ImproperlyConfigured("You have not set your mandrill api key " "in the settings file.") - if not api_url: + if not self.api_url: raise ImproperlyConfigured("You have not added the Mandrill api " "url to your settings.py") - payload = json.dumps({"key": api_key}) - r = requests.post("%s/users/info.json" % api_url, data=payload) + +class DjrillIndexView(DjrillApiMixin, View): + + def get(self, request): + + payload = json.dumps({"key": self.api_key}) + r = requests.post("%s/users/info.json" % self.api_url, data=payload) return HttpResponse(r.content) diff --git a/settings/base.py b/settings/base.py index fa791f8..c79b5b7 100644 --- a/settings/base.py +++ b/settings/base.py @@ -20,8 +20,8 @@ DATABASES = { } } -# MANDRILL API KEY -MANDRILL_API_KEY = "" +#MANDRILL +MANDRILL_API_KEY = None MANDRILL_API_URL = "http://mandrillapp.com/api/1.0/"