summaryrefslogtreecommitdiff
path: root/addons/auth_oauth/controllers
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2017-10-20 17:57:21 +0200
committerChristophe Simonis <chs@odoo.com>2017-10-20 17:57:21 +0200
commit5ea0f55d654f4c4c928fa1c4ea3ebcf7d1613812 (patch)
treece5bb069ae0d18c882b9ed707bddf36a987bc913 /addons/auth_oauth/controllers
parent635572b49d5b70a32b717cf2d52da49b10aac28e (diff)
parentbee0c11ef7fdd2f289b1b5d33bf4574e519d8fcf (diff)
[MERGE] forward port branch saas-15 up to bee0c11ef7f
Diffstat (limited to 'addons/auth_oauth/controllers')
-rw-r--r--addons/auth_oauth/controllers/main.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/addons/auth_oauth/controllers/main.py b/addons/auth_oauth/controllers/main.py
index 0d09f1e68aa..e231cd0f6d0 100644
--- a/addons/auth_oauth/controllers/main.py
+++ b/addons/auth_oauth/controllers/main.py
@@ -6,6 +6,7 @@ import logging
import json
+import werkzeug.urls
import werkzeug.utils
from werkzeug.exceptions import BadRequest
@@ -148,7 +149,11 @@ class OAuthController(http.Controller):
url = '/web#action=%s' % action
elif menu:
url = '/web#menu_id=%s' % menu
- return login_and_redirect(*credentials, redirect_url=url)
+ resp = login_and_redirect(*credentials, redirect_url=url)
+ # Since /web is hardcoded, verify user has right to land on it
+ if werkzeug.urls.url_parse(resp.location).path == '/web' and not request.env.user.has_group('base.group_user'):
+ resp.location = '/'
+ return resp
except AttributeError:
# auth_signup is not installed
_logger.error("auth_signup not installed on database %s: oauth sign up cancelled." % (dbname,))