summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2015-08-06 15:12:16 +0000
committerPatrick Uiterwijk <puiterwijk@redhat.com>2015-08-11 12:10:50 +0200
commita69505f662aadfd38c31ebadab18e1beccc1b95c (patch)
tree865bfe0e5aaf17a9b535a372313cda651ea67795
parentce2bbec3f2a010cfa26363a91a6224efe484f06f (diff)
downloadipsilon-a69505f662aadfd38c31ebadab18e1beccc1b95c.tar.gz
ipsilon-a69505f662aadfd38c31ebadab18e1beccc1b95c.tar.xz
ipsilon-a69505f662aadfd38c31ebadab18e1beccc1b95c.zip
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 <rcritten@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>
-rw-r--r--ipsilon/login/common.py4
1 files changed, 3 insertions, 1 deletions
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})