forked from Ailur/burgernotes-server
Added support for migration on changepassword and login
This commit is contained in:
parent
1fb0d1c85a
commit
9725de7fb3
28
main.go
28
main.go
|
@ -454,6 +454,11 @@ func main() {
|
||||||
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
modern, ok := data["modern"].(bool)
|
||||||
|
if !ok {
|
||||||
|
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
userid, taken, err := checkUsernameTaken(username)
|
userid, taken, err := checkUsernameTaken(username)
|
||||||
if !taken {
|
if !taken {
|
||||||
|
@ -499,6 +504,15 @@ func main() {
|
||||||
c.JSON(401, gin.H{"error": "Incorrect password", "migrated": true})
|
c.JSON(401, gin.H{"error": "Incorrect password", "migrated": true})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
if modern && migrated == 0 {
|
||||||
|
_, err := conn.Exec("UPDATE users SET migrated = 1 WHERE id = ?", userid)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("[ERROR] Unknown in /api/login modern Exec():", err)
|
||||||
|
c.JSON(500, gin.H{"error": "Something went wrong on our end. Please report this bug at https://centrifuge.hectabit.org/hectabit/burgernotes and refer to the documentation for more info. Your error code is: UNKNOWN-API-LOGIN-MODERN"})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
token, err := randomChars(512)
|
token, err := randomChars(512)
|
||||||
|
@ -655,6 +669,11 @@ func main() {
|
||||||
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
migrate, ok := data["migration"].(bool)
|
||||||
|
if !ok {
|
||||||
|
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
_, userid, err := getSession(token)
|
_, userid, err := getSession(token)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -682,6 +701,15 @@ func main() {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if migrate {
|
||||||
|
_, err = conn.Exec("UPDATE users SET migrated = 1 WHERE id = ?", userid)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("[ERROR] Unknown in /api/changepassword migrate Exec():", err)
|
||||||
|
c.JSON(500, gin.H{"error": "Something went wrong on our end. Please report this bug at https://centrifuge.hectabit.org/hectabit/burgernotes and refer to the documentation for more info. Your error code is: UNKNOWN-API-CHANGEPASSWORD-MIGRATE"})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
c.JSON(200, gin.H{"success": true})
|
c.JSON(200, gin.H{"success": true})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue