From a69505f662aadfd38c31ebadab18e1beccc1b95c Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Thu, 6 Aug 2015 15:12:16 +0000 Subject: [PATCH] Use full path when constructing "Other authentication methods" It was previously providing just a relative path and if the paths overlapped I guess the browser was trying to smash them together. This would result in a double "gssapi" in the gssapi URL like: https://my.ipsilon.org/idp/login/gssapi/gssapi/negotiate?ips... Don't rely on the browser to get the path right, use self.basepath. https://fedorahosted.org/ipsilon/ticket/153 Signed-off-by: Rob Crittenden Reviewed-by: Simo Sorce --- ipsilon/login/common.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ipsilon/login/common.py b/ipsilon/login/common.py index 31053a0..cd4f166 100644 --- a/ipsilon/login/common.py +++ b/ipsilon/login/common.py @@ -184,7 +184,9 @@ class LoginFormBase(LoginPageBase): if other_login_stacks: other_stacks = list() for ls in other_login_stacks: - url = '%s?%s' % (ls.path, self.trans.get_GET_arg()) + url = '%s/login/%s?%s' % ( + self.basepath, ls.path, self.trans.get_GET_arg() + ) name = ls.name other_stacks.append({'url': url, 'name': name}) -- 2.20.1