Added arn to the main repository
This commit is contained in:
31
arn/PersonName.go
Normal file
31
arn/PersonName.go
Normal file
@ -0,0 +1,31 @@
|
||||
package arn
|
||||
|
||||
// PersonName represents the name of a person.
|
||||
type PersonName struct {
|
||||
English Name `json:"english" editable:"true"`
|
||||
Japanese Name `json:"japanese" editable:"true"`
|
||||
}
|
||||
|
||||
// String returns the default visualization of the name.
|
||||
func (name *PersonName) String() string {
|
||||
return name.ByUser(nil)
|
||||
}
|
||||
|
||||
// ByUser returns the preferred name for the given user.
|
||||
func (name *PersonName) ByUser(user *User) string {
|
||||
if user == nil {
|
||||
return name.English.String()
|
||||
}
|
||||
|
||||
switch user.Settings().TitleLanguage {
|
||||
case "japanese":
|
||||
if name.Japanese.String() == "" {
|
||||
return name.English.String()
|
||||
}
|
||||
|
||||
return name.Japanese.String()
|
||||
|
||||
default:
|
||||
return name.English.String()
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user