From c4b23710f065e109b81c642396649e302c1cb3eb Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 17 Jul 2019 11:39:30 +0200 Subject: External source: manage unauthorized as an error --- showcase/models.py | 10 +++++++--- showcase/wagtail_hooks.py | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/showcase/models.py b/showcase/models.py index ab04f93..1510562 100644 --- a/showcase/models.py +++ b/showcase/models.py @@ -63,9 +63,13 @@ class ExternalSource(models.Model): headers = {'Authorization': 'token {}'.format(self.api_key)} try: response = requests.get(self.api_url, headers=headers) - data = json.loads(response.text) - cache.set(key, data) - self.error = "" + if response.status_code == 401: + self.error = base_error + str(_("permisssion denied - check " + "your API key")) + else: + data = json.loads(response.text) + cache.set(key, data) + self.error = "" except requests.exceptions.Timeout: self.error = base_error + str(_("connection time out")) except requests.exceptions.TooManyRedirects: diff --git a/showcase/wagtail_hooks.py b/showcase/wagtail_hooks.py index 86690df..ae1543a 100644 --- a/showcase/wagtail_hooks.py +++ b/showcase/wagtail_hooks.py @@ -26,7 +26,7 @@ class ExternalSourceAdmin(ModelAdmin): menu_order = 400 add_to_settings_menu = False exclude_from_explorer = False - list_display = ('name', 'slug', 'source_type', 'error') + list_display = ('name', 'source_type', 'error') search_fields = ('name',) -- cgit v1.2.3