summaryrefslogtreecommitdiffstats
path: root/app/oauth.go
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2018-02-23 10:08:35 -0500
committerGitHub <noreply@github.com>2018-02-23 10:08:35 -0500
commit4211a2bb3ccda5698fc3c284d9f5c468eb575d12 (patch)
tree163eacff33ed8f8af1e48d385b3c059d18ae9873 /app/oauth.go
parentd44ef7ea67324072f3fbf1230c77f0ee0b4ac8bd (diff)
downloadchat-4211a2bb3ccda5698fc3c284d9f5c468eb575d12.tar.gz
chat-4211a2bb3ccda5698fc3c284d9f5c468eb575d12.tar.bz2
chat-4211a2bb3ccda5698fc3c284d9f5c468eb575d12.zip
Fall back to constructured URL for OAuth SSO if SiteURL not set (#8352)
Diffstat (limited to 'app/oauth.go')
-rw-r--r--app/oauth.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/app/oauth.go b/app/oauth.go
index b9001ee0b..630fd3e2d 100644
--- a/app/oauth.go
+++ b/app/oauth.go
@@ -600,7 +600,12 @@ func (a *App) GetAuthorizationCode(w http.ResponseWriter, r *http.Request, servi
props["token"] = stateToken.Token
state := b64.StdEncoding.EncodeToString([]byte(model.MapToJson(props)))
- redirectUri := a.GetSiteURL() + "/signup/" + service + "/complete"
+ siteUrl := a.GetSiteURL()
+ if strings.TrimSpace(siteUrl) == "" {
+ siteUrl = GetProtocol(r) + "://" + r.Host
+ }
+
+ redirectUri := siteUrl + "/signup/" + service + "/complete"
authUrl := endpoint + "?response_type=code&client_id=" + clientId + "&redirect_uri=" + url.QueryEscape(redirectUri) + "&state=" + url.QueryEscape(state)