From 22a48f48963053e8e00777e305a42d5ec012874f Mon Sep 17 00:00:00 2001 From: Zara Gebru Date: Fri, 8 Apr 2016 14:59:45 +0200 Subject: Issue #431: add errback on logout --- service/pixelated/resources/logout_resource.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'service/pixelated/resources/logout_resource.py') diff --git a/service/pixelated/resources/logout_resource.py b/service/pixelated/resources/logout_resource.py index 01092b05..e26ec4b2 100644 --- a/service/pixelated/resources/logout_resource.py +++ b/service/pixelated/resources/logout_resource.py @@ -1,11 +1,15 @@ -from twisted.web.server import NOT_DONE_YET +import logging -from pixelated.resources import BaseResource -from twisted.web import util from twisted.internet import defer +from twisted.web import util +from twisted.web.http import INTERNAL_SERVER_ERROR +from twisted.web.server import NOT_DONE_YET +from pixelated.resources import BaseResource from pixelated.resources.login_resource import LoginResource +log = logging.getLogger(__name__) + class LogoutResource(BaseResource): BASE_URL = "logout" @@ -23,7 +27,14 @@ class LogoutResource(BaseResource): request.write(content) request.finish() + def handle_error(e): + log.error(e) + request.setResponseCode(INTERNAL_SERVER_ERROR) + request.write('Something went wrong!') + request.finish() + d = self._execute_logout(request) d.addCallback(_redirect_to_login) + d.addErrback(handle_error) return NOT_DONE_YET -- cgit v1.2.3