diff --git a/internal/renderer/renderer.go b/internal/renderer/renderer.go index 1e432a54e0..f865ccea21 100644 --- a/internal/renderer/renderer.go +++ b/internal/renderer/renderer.go @@ -31,7 +31,10 @@ func NewRenderer(dir http.FileSystem, tmplMapping map[string]string, funcs map[s if err != nil { return nil, err } - r.loadTemplates(dir, tmplMapping, funcs) + err = r.loadTemplates(dir, tmplMapping, funcs) + if err != nil { + return nil, err + } return r, nil } diff --git a/internal/ui/login/handler/login_handler.go b/internal/ui/login/handler/login_handler.go index 08e950116e..7c68ce0ddb 100644 --- a/internal/ui/login/handler/login_handler.go +++ b/internal/ui/login/handler/login_handler.go @@ -68,5 +68,10 @@ func (l *Login) renderLogin(w http.ResponseWriter, r *http.Request, authReq *mod errMessage = l.getErrorMessage(r, err) } data := l.getUserData(r, authReq, "Login", errType, errMessage) - l.renderer.RenderTemplate(w, r, l.renderer.Templates[tmplLogin], data, nil) + funcs := map[string]interface{}{ + "hasExternalLogin": func() bool { + return authReq.LoginPolicy.AllowExternalIDP && authReq.AllowedExternalIDPs != nil && len(authReq.AllowedExternalIDPs) > 0 + }, + } + l.renderer.RenderTemplate(w, r, l.renderer.Templates[tmplLogin], data, funcs) } diff --git a/internal/ui/login/handler/renderer.go b/internal/ui/login/handler/renderer.go index 01fd185353..dbba159ac3 100644 --- a/internal/ui/login/handler/renderer.go +++ b/internal/ui/login/handler/renderer.go @@ -137,6 +137,9 @@ func CreateRenderer(pathPrefix string, staticDir http.FileSystem, cookieName str "selectedGender": func(g int32) bool { return false }, + "hasExternalLogin": func() bool { + return false + }, } var err error r.Renderer, err = renderer.NewRenderer( diff --git a/internal/ui/login/static/templates/login.html b/internal/ui/login/static/templates/login.html index ab28a8eb77..4f84cdbdaa 100644 --- a/internal/ui/login/static/templates/login.html +++ b/internal/ui/login/static/templates/login.html @@ -36,7 +36,7 @@ {{end}} - {{if .LoginPolicy.AllowExternalIDP}} + {{if hasExternalLogin }}
{{t "Login.ExternalLogin"}}