Commit 612163db61bdd40be1030d30a575e29233af19cf
1 parent
6936a9ac
Exists in
master
and in
39 other branches
Clear cookies from gitlab and redmine sessions at logout
Signed-off-by: Charles de Oliveira <18oliveira.charles@gmail.com> Signed-off-by: Gustavo Jaruga <darksshades@gmail.com> Signed-off-by: Lucas Kanashiro <kanashiro.duarte@gmail.com>
Showing
4 changed files
with
14 additions
and
2 deletions
Show diff stats
src/accounts/urls.py
... | ... | @@ -4,6 +4,7 @@ from django.conf.urls import patterns, include, url |
4 | 4 | from .views import (UserProfileDetailView, UserProfileUpdateView, |
5 | 5 | ManageUserSubscriptionsView, ChangeXMPPPasswordView) |
6 | 6 | |
7 | +from accounts import views | |
7 | 8 | |
8 | 9 | urlpatterns = patterns('', |
9 | 10 | url(r'^register/$', 'accounts.views.signup', name='signup'), |
... | ... | @@ -11,7 +12,7 @@ urlpatterns = patterns('', |
11 | 12 | url(r'^change-password/$', |
12 | 13 | ChangeXMPPPasswordView.as_view(), name='change_password'), |
13 | 14 | |
14 | - url(r'^logout/?$', 'django.contrib.auth.views.logout'), | |
15 | + url(r'^logout/?$', 'accounts.views.logoutColab'), | |
15 | 16 | |
16 | 17 | url(r'^(?P<username>[\w@+.-]+)/?$', |
17 | 18 | UserProfileDetailView.as_view(), name='user_profile'), | ... | ... |
src/accounts/views.py
... | ... | @@ -5,6 +5,7 @@ import datetime |
5 | 5 | |
6 | 6 | from collections import OrderedDict |
7 | 7 | |
8 | +from django.contrib.auth.views import logout | |
8 | 9 | from django.contrib import messages |
9 | 10 | from django.db import transaction |
10 | 11 | from django.db.models import Count |
... | ... | @@ -16,6 +17,7 @@ from django.core.exceptions import PermissionDenied |
16 | 17 | from django.views.generic import DetailView, UpdateView |
17 | 18 | from django.utils.decorators import method_decorator |
18 | 19 | |
20 | +from django.http import HttpResponse | |
19 | 21 | from conversejs import xmpp |
20 | 22 | from conversejs.models import XMPPAccount |
21 | 23 | from haystack.query import SearchQuerySet |
... | ... | @@ -111,6 +113,13 @@ class UserProfileDetailView(UserProfileBaseMixin, DetailView): |
111 | 113 | return super(UserProfileDetailView, self).get_context_data(**context) |
112 | 114 | |
113 | 115 | |
116 | +def logoutColab(request): | |
117 | + response = logout(request, next_page='/') | |
118 | + response.delete_cookie('_redmine_session') | |
119 | + response.delete_cookie('_gitlab_session') | |
120 | + return response | |
121 | + | |
122 | + | |
114 | 123 | def signup(request): |
115 | 124 | # If the request method is GET just return the form |
116 | 125 | if request.method == 'GET': | ... | ... |
src/colab/custom_settings.py
... | ... | @@ -281,7 +281,7 @@ BROWSERID_AUDIENCES = [SITE_URL, SITE_URL.replace('https', 'http')] |
281 | 281 | LOGIN_URL = '/' |
282 | 282 | LOGIN_REDIRECT_URL = '/' |
283 | 283 | LOGIN_REDIRECT_URL_FAILURE = '/' |
284 | -LOGOUT_REDIRECT_URL = '/' | |
284 | +LOGOUT_REDIRECT_URL = '/user/logout' | |
285 | 285 | BROWSERID_CREATE_USER = False |
286 | 286 | |
287 | 287 | ... | ... |
src/colab/local_settings-dev.py
... | ... | @@ -34,6 +34,8 @@ HAYSTACK_CONNECTIONS['default']['URL'] = 'http://localhost:8983/solr/' |
34 | 34 | |
35 | 35 | COLAB_TRAC_URL = 'http://localhost:5000/' |
36 | 36 | COLAB_CI_URL = 'http://localhost:8080/ci/' |
37 | +COLAB_GITLAB_URL = 'http://localhost:8090/gitlab/' | |
38 | +COLAB_REDMINE_URL = 'http://localhost:9080/redmine/' | |
37 | 39 | |
38 | 40 | CONVERSEJS_ENABLED = False |
39 | 41 | ... | ... |