added google OAuth2 verified_email check
This commit is contained in:
		
							parent
							
								
									2420b2804a
								
							
						
					
					
						commit
						65aa114103
					
				| 
						 | 
				
			
			@ -42,10 +42,11 @@ func (p *Google) FetchAuthUser(token *oauth2.Token) (*AuthUser, error) {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	extracted := struct {
 | 
			
		||||
		Id      string
 | 
			
		||||
		Name    string
 | 
			
		||||
		Email   string
 | 
			
		||||
		Picture string
 | 
			
		||||
		Id            string `json:"id"`
 | 
			
		||||
		Name          string `json:"name"`
 | 
			
		||||
		Email         string `json:"email"`
 | 
			
		||||
		Picture       string `json:"picture"`
 | 
			
		||||
		VerifiedEmail bool   `json:"verified_email"`
 | 
			
		||||
	}{}
 | 
			
		||||
	if err := json.Unmarshal(data, &extracted); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
| 
						 | 
				
			
			@ -54,12 +55,15 @@ func (p *Google) FetchAuthUser(token *oauth2.Token) (*AuthUser, error) {
 | 
			
		|||
	user := &AuthUser{
 | 
			
		||||
		Id:           extracted.Id,
 | 
			
		||||
		Name:         extracted.Name,
 | 
			
		||||
		Email:        extracted.Email,
 | 
			
		||||
		AvatarUrl:    extracted.Picture,
 | 
			
		||||
		RawUser:      rawUser,
 | 
			
		||||
		AccessToken:  token.AccessToken,
 | 
			
		||||
		RefreshToken: token.RefreshToken,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if extracted.VerifiedEmail {
 | 
			
		||||
		user.Email = extracted.Email
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return user, nil
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue