ADD: added tournament creation without backend support
This commit is contained in:
@@ -53,6 +53,9 @@ func main() {
|
||||
api.GET("/players", func(c *gin.Context) {
|
||||
player.GetPlayers(c, db.GetDB())
|
||||
})
|
||||
api.GET("/players/:id", func(c *gin.Context) {
|
||||
player.GetPlayer(c, db.GetDB(), c.Param("id"))
|
||||
})
|
||||
api.POST("/players", func(c *gin.Context) {
|
||||
player.CreatePlayer(c, db.GetDB())
|
||||
})
|
||||
|
||||
@@ -53,7 +53,7 @@ func CreatePlayer(c *gin.Context, db *sql.DB) {
|
||||
common.RespondError(c, http.StatusInternalServerError, "Failed to create player")
|
||||
return
|
||||
}
|
||||
AddRoleToPlayer(db, newPlayer.ID, "player")
|
||||
err = AddRoleToPlayer(db, newPlayer.ID, "player")
|
||||
if err != nil {
|
||||
log.Printf("Error adding role to player: %v", err)
|
||||
common.RespondError(c, http.StatusInternalServerError, "Failed to assign role to player")
|
||||
@@ -65,7 +65,8 @@ func CreatePlayer(c *gin.Context, db *sql.DB) {
|
||||
common.RespondCreated(c, newPlayer)
|
||||
}
|
||||
|
||||
func GetPlayer(c *gin.Context, db *sql.DB) {
|
||||
func GetPlayer(c *gin.Context, db *sql.DB, id string) {
|
||||
log.Println("GetPlayer called with ID:", id)
|
||||
playerID := c.Param("id")
|
||||
if playerID == "" {
|
||||
common.RespondError(c, http.StatusBadRequest, "Player ID is required")
|
||||
@@ -84,10 +85,16 @@ func GetPlayer(c *gin.Context, db *sql.DB) {
|
||||
common.RespondError(c, http.StatusNotFound, "Player not found")
|
||||
return
|
||||
}
|
||||
|
||||
log.Printf("User %s (%s) requested player: %s", c.GetString("userId"), c.GetString("email"), player.Name)
|
||||
|
||||
role, err := GetPlayerRole(db, player.ID)
|
||||
if err != nil {
|
||||
log.Printf("Error retrieving role for player ID %s: %v", player.ID, err)
|
||||
common.RespondError(c, http.StatusInternalServerError, "Failed to retrieve player role")
|
||||
return
|
||||
}
|
||||
player.Role = role
|
||||
log.Printf(player.ID, player.Name, player.Email, player.Role)
|
||||
c.JSON(http.StatusOK, player)
|
||||
|
||||
}
|
||||
|
||||
func UpdatePlayer(c *gin.Context, db *sql.DB) {
|
||||
|
||||
@@ -134,9 +134,9 @@ func savePlayer(db *sql.DB, player Player) error {
|
||||
|
||||
log.Printf("Saving player: ID=%v, Name=%v, Email=%v", player.ID, player.Name, player.Email)
|
||||
|
||||
stmt := "INSERT INTO public.players (id, name, email) VALUES ($1, $2, $3)"
|
||||
stmt := "INSERT INTO public.players (id, name, email,password_hash) VALUES ($1, $2, $3,$4)"
|
||||
log.Printf("Generated SQL statement: %s", stmt)
|
||||
_, err := db.Exec(stmt, player.ID, player.Name, player.Email)
|
||||
_, err := db.Exec(stmt, player.ID, player.Name, player.Email, player.Password)
|
||||
|
||||
if err != nil {
|
||||
log.Printf("Error saving player to database: %v", err)
|
||||
@@ -202,7 +202,7 @@ func GetAllPlayers(db *sql.DB) ([]Player, error) {
|
||||
|
||||
func GetPlayerByID(db *sql.DB, id string) (Player, error) {
|
||||
var player Player
|
||||
err := db.QueryRow("SELECT id, name, email FROM players WHERE id = $1", id).Scan(&player.ID, &player.Name, &player.Email, &player.Role)
|
||||
err := db.QueryRow("SELECT id, name, email FROM players WHERE id = $1", id).Scan(&player.ID, &player.Name, &player.Email)
|
||||
if err != nil {
|
||||
log.Printf("Error retrieving player by ID %s: %v", id, err)
|
||||
return Player{}, err
|
||||
|
||||
BIN
backend/main
Executable file
BIN
backend/main
Executable file
Binary file not shown.
Reference in New Issue
Block a user