[server] Rename user.display_name to name

This commit is contained in:
Abhishek Shroff
2025-05-27 22:50:07 +05:30
parent 573fba6d1a
commit e1f92e42a2
18 changed files with 56 additions and 56 deletions

View File

@@ -57,9 +57,9 @@ func handlePasswordAuth(c *gin.Context) {
AccessToken: token,
User: responses.LoggedInUser{
User: responses.User{
ID: user.ID,
Email: user.Email,
DisplayName: user.DisplayName,
ID: user.ID,
Email: user.Email,
Name: user.Name,
},
Home: user.Home,
Permissions: user.Permissions,

View File

@@ -9,7 +9,7 @@ import (
)
type detailsParams struct {
DisplayName string `json:"display_name" form:"display_name"`
Name string `json:"name" form:"name"`
}
func handleDetailsUpdateRoute(c *gin.Context) {
@@ -23,11 +23,11 @@ func handleDetailsUpdateRoute(c *gin.Context) {
err = db.Get(c.Request.Context()).RunInTx(func(d db.Handler) error {
userManager := user.ManagerFromDB(d)
if params.DisplayName != "" {
if err := userManager.UpdateUserDisplayName(u, params.DisplayName); err != nil {
if params.Name != "" {
if err := userManager.UpdateUserName(u, params.Name); err != nil {
return err
}
u.DisplayName = params.DisplayName
u.Name = params.Name
}
return nil
})
@@ -36,8 +36,8 @@ func handleDetailsUpdateRoute(c *gin.Context) {
panic(err)
}
c.JSON(200, responses.User{
ID: u.ID,
Email: u.Email,
DisplayName: u.DisplayName,
ID: u.ID,
Email: u.Email,
Name: u.Name,
})
}

View File

@@ -34,9 +34,9 @@ func handleHomeRoute(c *gin.Context) {
c.JSON(200, homeResponse{
User: responses.LoggedInUser{
User: responses.User{
ID: user.ID,
Email: user.Email,
DisplayName: user.DisplayName,
ID: user.ID,
Email: user.Email,
Name: user.Name,
},
Home: user.Home,
Permissions: user.Permissions,

View File

@@ -38,9 +38,9 @@ type ResourceFull struct {
}
type User struct {
ID int32 `json:"id"`
Email string `json:"email"`
DisplayName string `json:"display_name"`
ID int32 `json:"id"`
Email string `json:"email"`
Name string `json:"name"`
}
type LoggedInUser struct {

View File

@@ -12,7 +12,7 @@ import (
type inviteParams struct {
Email string `json:"email" form:"email" binding:"required"`
DisplayName string `json:"display_name" form:"display_name"`
Name string `json:"name" form:"name"`
NoCreateHome bool `json:"no_create_home" form:"no_create_home"`
NoSendEmail bool `json:"no_send_email" form:"no_send_email"`
}
@@ -34,7 +34,7 @@ func handleInviteRequest(c *gin.Context) {
if params.NoCreateHome {
homePath = ""
}
if user, err := userManager.CreateUser(params.Email, params.DisplayName, homePath); err != nil {
if user, err := userManager.CreateUser(params.Email, params.Name, homePath); err != nil {
panic(err)
} else {
if !params.NoSendEmail {
@@ -42,6 +42,6 @@ func handleInviteRequest(c *gin.Context) {
mail.SendWelcomeEmail(user)
}()
}
c.JSON(200, responses.User{ID: user.ID, Email: user.Email, DisplayName: user.DisplayName})
c.JSON(200, responses.User{ID: user.ID, Email: user.Email, Name: user.Name})
}
}

View File

@@ -33,9 +33,9 @@ func handleUsersListRoute(c *gin.Context) {
result := make([]responses.User, len(users))
for i, u := range users {
result[i] = responses.User{
ID: u.ID,
Email: u.Email,
DisplayName: u.DisplayName,
ID: u.ID,
Email: u.Email,
Name: u.Name,
}
}

View File

@@ -34,7 +34,7 @@ func setupListCommand() *cobra.Command {
logrus.Fatal(err)
}
for _, user := range users {
logrus.Infof("%24s : %s", user.Email, user.DisplayName)
logrus.Infof("%24s : %s", user.Email, user.Name)
}
},
}

View File

@@ -21,12 +21,12 @@ func setupInviteCommand() *cobra.Command {
Run: func(cmd *cobra.Command, args []string) {
email := args[0]
displayName := ""
name := ""
if n, err := cmd.Flags().GetString("name"); err != nil {
fmt.Println("invalid value for flag 'name': " + err.Error())
os.Exit(1)
} else if n != "" {
displayName = n
name = n
}
noCreateHome, _ := cmd.Flags().GetBool("no-create-home")
@@ -39,7 +39,7 @@ func setupInviteCommand() *cobra.Command {
var u user.User
err := db.Get(context.Background()).RunInTx(func(db db.Handler) error {
userManager := user.ManagerFromDB(db)
if user, err := userManager.CreateUser(email, displayName, homePath); err != nil {
if user, err := userManager.CreateUser(email, name, homePath); err != nil {
return err
} else {
u = user
@@ -58,7 +58,7 @@ func setupInviteCommand() *cobra.Command {
}
},
}
cmd.Flags().StringP("name", "n", "", "Full Name")
cmd.Flags().StringP("name", "n", "", "Name")
cmd.Flags().StringP("base-dir", "b", "/home", "Base directory for home")
cmd.Flags().BoolP("no-create-home", "M", false, "Do not make home directory")
cmd.Flags().Bool("no-email", false, "Do not send email")

View File

@@ -25,7 +25,7 @@ func setupModCommand() *cobra.Command {
os.Exit(1)
}
displayName, _ := cmd.Flags().GetString("name")
name, _ := cmd.Flags().GetString("name")
f := fs.OpenOmniscient(db.Get(context.Background()))
var homeID pgtype.UUID
@@ -44,8 +44,8 @@ func setupModCommand() *cobra.Command {
err = db.Get(context.Background()).RunInTx(func(db db.Handler) error {
m := user.ManagerFromDB(db)
if displayName != "" {
if err := m.UpdateUserDisplayName(u, displayName); err != nil {
if name != "" {
if err := m.UpdateUserName(u, name); err != nil {
return err
}
}
@@ -62,7 +62,7 @@ func setupModCommand() *cobra.Command {
}
},
}
cmd.Flags().StringP("name", "n", "", "Display Name")
cmd.Flags().StringP("name", "n", "", "Name")
cmd.Flags().StringP("home", "d", "", "Home Directory")
return cmd
}

View File

@@ -4,7 +4,7 @@ CREATE TABLE users(
modified TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
deleted TIMESTAMP,
email TEXT NOT NULL UNIQUE,
display_name TEXT NOT NULL,
name TEXT NOT NULL,
password_hash TEXT NOT NULL,
home uuid REFERENCES resources(id),
permissions INTEGER NOT NULL DEFAULT 0,

View File

@@ -49,11 +49,11 @@ func (m manager) CreateAccessToken(user User) (string, error) {
}
func (m manager) ReadAccessToken(accessToken string) (user User, err error) {
const q = `SELECT t.expires, u.id, u.email, u.display_name, u.permissions, u.home FROM access_tokens t JOIN users u ON t.user_id = u.id WHERE t.id = $1; `
const q = `SELECT t.expires, u.id, u.email, u.name, u.permissions, u.home FROM access_tokens t JOIN users u ON t.user_id = u.id WHERE t.id = $1; `
row := m.db.QueryRow(q, accessToken)
var expires pgtype.Timestamp
err = row.Scan(&expires, &user.ID, &user.Email, &user.DisplayName, &user.Permissions, &user.Home)
err = row.Scan(&expires, &user.ID, &user.Email, &user.Name, &user.Permissions, &user.Home)
if err != nil {
if errors.Is(err, pgx.ErrNoRows) {
err = ErrCredentialsInvalid

View File

@@ -15,7 +15,7 @@ import (
var errInvalidEmailAddress = errors.NewError(http.StatusBadRequest, "invalid_email_address", "Invalid email address")
var errEmailExists = errors.NewError(http.StatusBadRequest, "user_already_exists", "User already exists")
func (m manager) CreateUser(email, displayName string, homePath string) (User, error) {
func (m manager) CreateUser(email, ame string, homePath string) (User, error) {
var user User
err := m.db.RunInTx(func(db db.Handler) error {
m := m.withDb(db)
@@ -32,7 +32,7 @@ func (m manager) CreateUser(email, displayName string, homePath string) (User, e
homeID = pgtype.UUID{Bytes: home.ID(), Valid: true}
}
user, err = m.insertUser(email, displayName, homeID)
user, err = m.insertUser(email, ame, homeID)
if err != nil {
return err
}
@@ -47,12 +47,12 @@ func (m manager) CreateUser(email, displayName string, homePath string) (User, e
return user, err
}
func (m manager) insertUser(email, displayName string, home pgtype.UUID) (User, error) {
const q = ` INSERT INTO users(email, display_name, password_hash, home)
func (m manager) insertUser(email, name string, home pgtype.UUID) (User, error) {
const q = ` INSERT INTO users(email, name, password_hash, home)
VALUES ($1, $2, $3, $4)
RETURNING id, email, display_name, home, permissions`
RETURNING id, email, name, home, permissions`
if rows, err := m.db.Query(q, strings.ToLower(email), displayName, "", home); err != nil {
if rows, err := m.db.Query(q, strings.ToLower(email), name, "", home); err != nil {
return User{}, err
} else if user, err := pgx.CollectExactlyOneRow(rows, scanUser); err != nil {
if strings.Contains(err.Error(), "valid_email") {

View File

@@ -19,7 +19,7 @@ func (m manager) ListUsers(since *time.Time) ([]User, error) {
if since != nil {
s.Time = *since
}
const q = "SELECT id, email, display_name, home, permissions FROM users WHERE modified > $1::TIMESTAMP"
const q = "SELECT id, email, name, home, permissions FROM users WHERE modified > $1::TIMESTAMP"
if rows, err := m.db.Query(q, s); err != nil {
return nil, err
} else {
@@ -28,7 +28,7 @@ func (m manager) ListUsers(since *time.Time) ([]User, error) {
}
func (m manager) UserByEmail(email string) (User, error) {
const q = "SELECT id, email, display_name, home, permissions FROM users WHERE email = $1"
const q = "SELECT id, email, name, home, permissions FROM users WHERE email = $1"
if rows, err := m.db.Query(q, strings.ToLower(email)); err != nil {
return User{}, err
} else if u, err := pgx.CollectExactlyOneRow(rows, scanUser); err != nil {
@@ -42,12 +42,12 @@ func (m manager) UserByEmail(email string) (User, error) {
}
func (m manager) userPasswordHashByEmail(email string) (user User, passwordHash string, err error) {
const q = "SELECT id, email, display_name, home, permissions, password_hash FROM users WHERE email = $1"
const q = "SELECT id, email, name, home, permissions, password_hash FROM users WHERE email = $1"
row := m.db.QueryRow(q, strings.ToLower(email))
err = row.Scan(
&user.ID,
&user.Email,
&user.DisplayName,
&user.Name,
&user.Home,
&user.Permissions,
&passwordHash)

View File

@@ -13,9 +13,9 @@ func (m manager) UpdateUserHome(user User, home pgtype.UUID) error {
return nil
}
func (m manager) UpdateUserDisplayName(user User, displayName string) error {
const q = "UPDATE users SET display_name = $2::TEXT, modified = NOW() WHERE id = $1::INT"
if _, err := m.db.Exec(q, user.ID, displayName); err != nil {
func (m manager) UpdateUserName(user User, name string) error {
const q = "UPDATE users SET name = $2::TEXT, modified = NOW() WHERE id = $1::INT"
if _, err := m.db.Exec(q, user.ID, name); err != nil {
return err
}
return nil

View File

@@ -13,7 +13,7 @@ import (
type User struct {
ID int32
Email string
DisplayName string
Name string
Home pgtype.UUID
Permissions Permission
}
@@ -23,7 +23,7 @@ func scanUser(row pgx.CollectableRow) (User, error) {
err := row.Scan(
&u.ID,
&u.Email,
&u.DisplayName,
&u.Name,
&u.Home,
&u.Permissions,
)
@@ -36,7 +36,7 @@ func (u User) OpenFileSystem(ctx context.Context) fs.FileSystem {
type Manager interface {
// create.go
CreateUser(email, displayName string, homePath string) (User, error)
CreateUser(email, name string, homePath string) (User, error)
// select.go
ListUsers(since *time.Time) ([]User, error)
@@ -45,7 +45,7 @@ type Manager interface {
// update.go
UpdateUserHome(user User, home pgtype.UUID) error
UpdateUserDisplayName(user User, displayName string) error
UpdateUserName(user User, name string) error
UpdateUserPassword(user User, password string) error
// auth.go

View File

@@ -27,7 +27,7 @@ func send(e Email, rcpt user.User, params any) error {
d := dialer()
msg := gomail.NewMessage()
msg.SetAddressHeader("From", Cfg.From.Email, Cfg.From.Name)
msg.SetAddressHeader("To", rcpt.Email, rcpt.DisplayName)
msg.SetAddressHeader("To", rcpt.Email, rcpt.Name)
msg.SetHeader("Subject", e.Subject)
msg.SetBodyWriter("text/plain", func(w io.Writer) error {
return e.Plain.Execute(w, params)

View File

@@ -10,12 +10,12 @@ type ResetPasswordParams struct {
func SendPasswordResetEmail(u user.User, token string) error {
email := emails["password_reset"]
params := map[string]string{
"name": u.DisplayName,
"name": u.Name,
"email": u.Email,
"instance": Cfg.Instance,
"token": token,
}
if u.DisplayName == "" {
if u.Name == "" {
params["name"] = "there"
}
return send(email, u, params)

View File

@@ -5,10 +5,10 @@ import "github.com/shroff/phylum/server/internal/core/user"
func SendWelcomeEmail(u user.User) error {
email := emails["welcome"]
params := map[string]string{
"name": u.DisplayName,
"name": u.Name,
"instance": Cfg.Instance,
}
if u.DisplayName == "" {
if u.Name == "" {
params["name"] = "there"
}
return send(email, u, params)