Skip to content

Commit 69eda56

Browse files
zeripathjeffliu27
authored andcommitted
Add LastLogin to the User API (go-gitea#7196)
1 parent a28145f commit 69eda56

File tree

4 files changed

+19
-0
lines changed

4 files changed

+19
-0
lines changed

models/user.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,8 @@ func (u *User) APIFormat() *api.User {
214214
AvatarURL: u.AvatarLink(),
215215
Language: u.Language,
216216
IsAdmin: u.IsAdmin,
217+
LastLogin: u.LastLoginUnix.AsTime(),
218+
Created: u.CreatedUnix.AsTime(),
217219
}
218220
}
219221

modules/structs/user.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package structs
66

77
import (
88
"encoding/json"
9+
"time"
910
)
1011

1112
// User represents a user
@@ -25,6 +26,10 @@ type User struct {
2526
Language string `json:"language"`
2627
// Is the user an administrator
2728
IsAdmin bool `json:"is_admin"`
29+
// swagger:strfmt date-time
30+
LastLogin time.Time `json:"last_login,omitempty"`
31+
// swagger:strfmt date-time
32+
Created time.Time `json:"created,omitempty"`
2833
}
2934

3035
// MarshalJSON implements the json.Marshaler interface for User, adding field(s) for backward compatibility

routers/api/v1/convert/convert.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,8 @@ func ToUser(user *models.User, signed, admin bool) *api.User {
236236
AvatarURL: user.AvatarLink(),
237237
FullName: markup.Sanitize(user.FullName),
238238
IsAdmin: user.IsAdmin,
239+
LastLogin: user.LastLoginUnix.AsTime(),
240+
Created: user.CreatedUnix.AsTime(),
239241
}
240242
if signed && (!user.KeepEmailPrivate || admin) {
241243
result.Email = user.Email

templates/swagger/v1_json.tmpl

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9715,6 +9715,11 @@
97159715
"type": "string",
97169716
"x-go-name": "AvatarURL"
97179717
},
9718+
"created": {
9719+
"type": "string",
9720+
"format": "date-time",
9721+
"x-go-name": "Created"
9722+
},
97189723
"email": {
97199724
"type": "string",
97209725
"format": "email",
@@ -9741,6 +9746,11 @@
97419746
"type": "string",
97429747
"x-go-name": "Language"
97439748
},
9749+
"last_login": {
9750+
"type": "string",
9751+
"format": "date-time",
9752+
"x-go-name": "LastLogin"
9753+
},
97449754
"login": {
97459755
"description": "the user's username",
97469756
"type": "string",

0 commit comments

Comments
 (0)