Use a user's full name as their display name if a nickname hasn't been specified

This commit is contained in:
hmhealey
2015-07-17 15:22:57 -04:00
parent 098cbcdc21
commit 1dba330146
3 changed files with 64 additions and 2 deletions
+14
View File
@@ -237,9 +237,23 @@ func (u *User) AddNotifyProp(key string, value string) {
u.NotifyProps[key] = value
}
func (u *User) GetFullName() string {
if u.FirstName != "" && u.LastName != "" {
return u.FirstName + " " + u.LastName
} else if u.FirstName != "" {
return u.FirstName
} else if u.LastName != "" {
return u.LastName
} else {
return ""
}
}
func (u *User) GetDisplayName() string {
if u.Nickname != "" {
return u.Nickname
} else if fullName := u.GetFullName(); fullName != "" {
return fullName
} else {
return u.Username
}
+31 -1
View File
@@ -108,13 +108,43 @@ func TestUserIsValid(t *testing.T) {
}
}
func TestUserGetFullName(t *testing.T) {
user := User{}
if fullName := user.GetFullName(); fullName != "" {
t.Fatal("Full name should be blank")
}
user.FirstName = "first"
if fullName := user.GetFullName(); fullName != "first" {
t.Fatal("Full name should be first name")
}
user.FirstName = ""
user.LastName = "last"
if fullName := user.GetFullName(); fullName != "last" {
t.Fatal("Full name should be last name")
}
user.FirstName = "first"
if fullName := user.GetFullName(); fullName != "first last" {
t.Fatal("Full name should be first name and last name")
}
}
func TestUserGetDisplayName(t *testing.T) {
user := User{FirstName: "first", LastName: "last", Username: "user"}
user := User{Username: "user"}
if displayName := user.GetDisplayName(); displayName != "user" {
t.Fatal("Display name should be username")
}
user.FirstName = "first"
user.LastName = "last"
if displayName := user.GetDisplayName(); displayName != "first last" {
t.Fatal("Display name should be full name")
}
user.Nickname = "nickname"
if displayName := user.GetDisplayName(); displayName != "nickname" {
t.Fatal("Display name should be nickname")
+19 -1
View File
@@ -825,10 +825,28 @@ module.exports.changeColor =function(col, amt) {
return (usePound?"#":"") + String("000000" + (g | (b << 8) | (r << 16)).toString(16)).slice(-6);
};
module.exports.getFullName = function(user) {
if (user.first_name && user.last_name) {
return user.first_name + " " + user.last_name;
} else if (user.first_name) {
return user.first_name;
} else if (user.last_name) {
return user.last_name;
} else {
return "";
}
};
module.exports.getDisplayName = function(user) {
if (user.nickname && user.nickname.trim().length > 0) {
return user.nickname;
} else {
return user.username;
var fullName = module.exports.getFullName(user);
if (fullName) {
return fullName;
} else {
return user.username;
}
}
};