summaryrefslogtreecommitdiff
path: root/service/pixelated/resources/features_resource.py
diff options
context:
space:
mode:
authorNavaL <mnandri@thoughtworks.com>2016-01-22 16:00:17 +0100
committerNavaL <mnandri@thoughtworks.com>2016-01-22 16:00:17 +0100
commitdacc69ea5cc3a35faf05a95e8976cd9a1fdec621 (patch)
tree79227ee17296b72f9ac1a93b3d8a486fcd21afdb /service/pixelated/resources/features_resource.py
parentd0c5c8a05327e8af38ab4c3a2f6024ce582c9a99 (diff)
re-introduced logout functionality for multi-user
Issue #576
Diffstat (limited to 'service/pixelated/resources/features_resource.py')
-rw-r--r--service/pixelated/resources/features_resource.py20
1 files changed, 15 insertions, 5 deletions
diff --git a/service/pixelated/resources/features_resource.py b/service/pixelated/resources/features_resource.py
index 958c1414..c8cad2d3 100644
--- a/service/pixelated/resources/features_resource.py
+++ b/service/pixelated/resources/features_resource.py
@@ -18,21 +18,31 @@ from pixelated.resources import respond_json
import os
from twisted.web.resource import Resource
+from pixelated.resources.logout_resource import LogoutResource
+
class FeaturesResource(Resource):
DISABLED_FEATURES = ['draftReply']
isLeaf = True
- def render_GET(self, request):
- dispatcher_features = {}
-
- if os.environ.get('DISPATCHER_LOGOUT_URL'):
- dispatcher_features['logout'] = os.environ.get('DISPATCHER_LOGOUT_URL')
+ def __init__(self, multi_user=False):
+ Resource.__init__(self)
+ self._multi_user = multi_user
+ def render_GET(self, request):
+ dispatcher_features = self._dispatcher_features()
disabled_features = self._disabled_features()
return respond_json(
{'disabled_features': disabled_features, 'dispatcher_features': dispatcher_features}, request)
+ def _dispatcher_features(self):
+ dispatcher_features = {}
+ if os.environ.get('DISPATCHER_LOGOUT_URL'):
+ dispatcher_features['logout'] = os.environ.get('DISPATCHER_LOGOUT_URL')
+ if self._multi_user:
+ dispatcher_features['logout'] = '/%s' % LogoutResource.BASE_URL
+ return dispatcher_features
+
def _disabled_features(self):
disabled_features = [default_disabled_feature for default_disabled_feature in self.DISABLED_FEATURES]
if os.environ.get('FEEDBACK_URL') is None: