Teams: show proper label for each auth provider (#17860)
* Teams: show proper label for each auth provider Teams: don't sore AuthModule in team_member table, use JOIN to get it instead * Teams: fix AddTeamMember after last changes * Teams: add more auth provider labels * Teams: show external sync badge if LDAP is not enabled * Teams: tests for getting auth module
This commit is contained in:
+20
-2
@@ -21,14 +21,32 @@ func GetTeamMembers(c *m.ReqContext) Response {
|
||||
member.AvatarUrl = dtos.GetGravatarUrl(member.Email)
|
||||
member.Labels = []string{}
|
||||
|
||||
if setting.IsEnterprise && setting.LDAPEnabled && member.External {
|
||||
member.Labels = append(member.Labels, "LDAP")
|
||||
if setting.IsEnterprise && member.External {
|
||||
authProvider := GetAuthProviderLabel(member.AuthModule)
|
||||
member.Labels = append(member.Labels, authProvider)
|
||||
}
|
||||
}
|
||||
|
||||
return JSON(200, query.Result)
|
||||
}
|
||||
|
||||
func GetAuthProviderLabel(authModule string) string {
|
||||
switch authModule {
|
||||
case "oauth_github":
|
||||
return "GitHub"
|
||||
case "oauth_google":
|
||||
return "Google"
|
||||
case "oauth_gitlab":
|
||||
return "GitLab"
|
||||
case "oauth_grafana_com", "oauth_grafananet":
|
||||
return "grafana.com"
|
||||
case "ldap", "":
|
||||
return "LDAP"
|
||||
default:
|
||||
return "OAuth"
|
||||
}
|
||||
}
|
||||
|
||||
// POST /api/teams/:teamId/members
|
||||
func (hs *HTTPServer) AddTeamMember(c *m.ReqContext, cmd m.AddTeamMemberCommand) Response {
|
||||
cmd.OrgId = c.OrgId
|
||||
|
||||
Reference in New Issue
Block a user