浏览代码

profile: use name or fallback for profile page

Torkel Ödegaard 8 年之前
父节点
当前提交
2797e8e2d0
共有 2 个文件被更改,包括 12 次插入2 次删除
  1. 2 2
      pkg/api/index.go
  2. 10 0
      pkg/models/user.go

+ 2 - 2
pkg/api/index.go

@@ -120,8 +120,8 @@ func setIndexViewData(c *middleware.Context) (*dtos.IndexViewData, error) {
 
 
 	if c.IsSignedIn {
 	if c.IsSignedIn {
 		profileNode := &dtos.NavLink{
 		profileNode := &dtos.NavLink{
-			Text:         c.SignedInUser.Login,
-			SubTitle:     c.SignedInUser.Name,
+			Text:         c.SignedInUser.NameOrFallback(),
+			SubTitle:     c.SignedInUser.Login,
 			Id:           "profile",
 			Id:           "profile",
 			Img:          data.User.GravatarUrl,
 			Img:          data.User.GravatarUrl,
 			Url:          setting.AppSubUrl + "/profile",
 			Url:          setting.AppSubUrl + "/profile",

+ 10 - 0
pkg/models/user.go

@@ -170,6 +170,16 @@ func (u *SignedInUser) ShouldUpdateLastSeenAt() bool {
 	return u.UserId > 0 && time.Since(u.LastSeenAt) > time.Minute*5
 	return u.UserId > 0 && time.Since(u.LastSeenAt) > time.Minute*5
 }
 }
 
 
+func (u *SignedInUser) NameOrFallback() string {
+	if u.Name != "" {
+		return u.Name
+	} else if u.Login != "" {
+		return u.Login
+	} else {
+		return u.Email
+	}
+}
+
 type UpdateUserLastSeenAtCommand struct {
 type UpdateUserLastSeenAtCommand struct {
 	UserId int64
 	UserId int64
 }
 }