User login should now be atomic
This commit is contained in:
		
							parent
							
								
									1fb45f8c4a
								
							
						
					
					
						commit
						76fb42a61e
					
				|  | @ -50,15 +50,15 @@ 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 IGNORE INTO users (id, mail, username, display_name) VALUES (?, ?, ?, ?);`, user.ID, user.Mail, user.Username, user.DisplayName) | ||||
| 	_, err := dbConn.Exec(`INSERT INTO users (id, mail, username, display_name) VALUES (?, ?, ?, ?) ON CONFLICT(id) DO UPDATE SET mail = excluded.mail, username = excluded.username, display_name = excluded.display_name;`, 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 | ||||
| 	} | ||||
| 	// _, 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
 | ||||
| 	// }
 | ||||
| 
 | ||||
| 	return user, nil | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue