summaryrefslogtreecommitdiff
path: root/database/users.go
diff options
context:
space:
mode:
authorEzri Brimhall <ezri.brimhall@usu.edu>2024-04-02 14:55:22 -0400
committersimponic <simponic@hatecomputers.club>2024-04-02 14:55:22 -0400
commiteb1a6069d65ffc84c12759902ba909c11ea8a0b4 (patch)
tree550bf8b0b87ceb3be92ea4f56729f49fb84f6afc /database/users.go
parenteccc0f20f01d0176cfbcc031233b549b6013ddac (diff)
downloadhatecomputers.club-eb1a6069d65ffc84c12759902ba909c11ea8a0b4.tar.gz
hatecomputers.club-eb1a6069d65ffc84c12759902ba909c11ea8a0b4.zip
Should fix cascading delete issue (#3)
Reviewed-on: https://git.hatecomputers.club/hatecomputers/hatecomputers.club/pulls/3 Co-authored-by: Ezri Brimhall <ezri.brimhall@usu.edu> Co-committed-by: Ezri Brimhall <ezri.brimhall@usu.edu>
Diffstat (limited to 'database/users.go')
-rw-r--r--database/users.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/database/users.go b/database/users.go
index ab48699..f438281 100644
--- a/database/users.go
+++ b/database/users.go
@@ -50,7 +50,12 @@ func GetUser(dbConn *sql.DB, id string) (*User, error) {
func FindOrSaveUser(dbConn *sql.DB, user *User) (*User, error) {
log.Println("finding or saving user", user.ID)
- _, err := dbConn.Exec(`INSERT OR REPLACE INTO users (id, mail, username, display_name) VALUES (?, ?, ?, ?);`, user.ID, user.Mail, user.Username, user.DisplayName)
+ _, err := dbConn.Exec(`INSERT OR IGNORE INTO users (id, mail, username, display_name) VALUES (?, ?, ?, ?);`, user.ID, user.Mail, user.Username, user.DisplayName)
+ if err != nil {
+ return nil, err
+ }
+
+ _, err = dbConn.Exec(`UPDATE users SET mail = ?, username = ?, display_name = ? WHERE id = ?;`, user.Mail, user.Username, user.DisplayName, user.ID)
if err != nil {
return nil, err
}