60 lines
2.0 KiB
Go
60 lines
2.0 KiB
Go
package github
|
|
|
|
import (
|
|
"fmt"
|
|
"time"
|
|
)
|
|
|
|
type UserInfo struct {
|
|
Login string `json:"login"`
|
|
Id int `json:"id"`
|
|
NodeId string `json:"node_id"`
|
|
AvatarUrl string `json:"avatar_url"`
|
|
GravatarId string `json:"gravatar_id"`
|
|
Url string `json:"url"`
|
|
HtmlUrl string `json:"html_url"`
|
|
FollowersUrl string `json:"followers_url"`
|
|
FollowingUrl string `json:"following_url"`
|
|
GistsUrl string `json:"gists_url"`
|
|
StarredUrl string `json:"starred_url"`
|
|
SubscriptionsUrl string `json:"subscriptions_url"`
|
|
OrganizationsUrl string `json:"organizations_url"`
|
|
ReposUrl string `json:"repos_url"`
|
|
EventsUrl string `json:"events_url"`
|
|
ReceivedEventsUrl string `json:"received_events_url"`
|
|
Type string `json:"type"`
|
|
UserViewType string `json:"user_view_type"`
|
|
SiteAdmin bool `json:"site_admin"`
|
|
Name string `json:"name"`
|
|
Company interface{} `json:"company"`
|
|
Blog string `json:"blogusecase"`
|
|
Location interface{} `json:"location"`
|
|
GEmail string `json:"email"`
|
|
Hireable interface{} `json:"hireable"`
|
|
Bio string `json:"bio"`
|
|
TwitterUsername string `json:"twitter_username"`
|
|
NotificationEmail string `json:"notification_email"`
|
|
PublicRepos int `json:"public_repos"`
|
|
PublicGists int `json:"public_gists"`
|
|
Followers int `json:"followers"`
|
|
Following int `json:"following"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|
|
|
|
func (u UserInfo) ID() string {
|
|
return fmt.Sprintf("%d", u.Id)
|
|
}
|
|
|
|
func (u UserInfo) Email() string {
|
|
return u.GEmail
|
|
}
|
|
|
|
func (u UserInfo) FirstName() string {
|
|
return u.Name
|
|
}
|
|
|
|
func (u UserInfo) LastName() string {
|
|
return u.Name
|
|
}
|