Remove Google as a SSO service.
Этот коммит содержится в:
@@ -1,56 +0,0 @@
|
||||
// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
package model
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"io"
|
||||
"strings"
|
||||
)
|
||||
|
||||
const (
|
||||
USER_AUTH_SERVICE_GOOGLE = "google"
|
||||
)
|
||||
|
||||
type GoogleUser struct {
|
||||
Id string `json:"id"`
|
||||
Nickname string `json:"nickname"`
|
||||
DisplayName string `json:"displayName"`
|
||||
Emails []map[string]string `json:"emails"`
|
||||
Names map[string]string `json:"name"`
|
||||
}
|
||||
|
||||
func UserFromGoogleUser(gu *GoogleUser) *User {
|
||||
user := &User{}
|
||||
user.FirstName = gu.Names["givenName"]
|
||||
user.LastName = gu.Names["familyName"]
|
||||
user.Nickname = gu.Nickname
|
||||
|
||||
for _, e := range gu.Emails {
|
||||
if e["type"] == "account" {
|
||||
user.Email = e["value"]
|
||||
user.Username = CleanUsername(strings.Split(user.Email, "@")[0])
|
||||
}
|
||||
}
|
||||
|
||||
user.AuthData = gu.Id
|
||||
user.AuthService = USER_AUTH_SERVICE_GOOGLE
|
||||
|
||||
return user
|
||||
}
|
||||
|
||||
func GoogleUserFromJson(data io.Reader) *GoogleUser {
|
||||
decoder := json.NewDecoder(data)
|
||||
var gu GoogleUser
|
||||
err := decoder.Decode(&gu)
|
||||
if err == nil {
|
||||
return &gu
|
||||
} else {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
func (gu *GoogleUser) GetAuthData() string {
|
||||
return gu.Id
|
||||
}
|
||||
Ссылка в новой задаче
Block a user