Save hashed PW. Simplify model update. Bugfixes & improvements. Working user-settings & games.

This commit is contained in:
MaxJa4
2024-01-18 19:00:32 +01:00
parent f8ac93f163
commit f2ab72ba1e
20 changed files with 310 additions and 113 deletions

View File

@@ -4,12 +4,11 @@ type Game struct {
ID uint `json:"id" gorm:"primary_key"`
Name string `json:"name" binding:"required"`
Tag string `json:"tag" binding:"required"`
Settings []GameSetting `json:"settings" gorm:"foreignKey:GameID"`
Settings []GameSetting `json:"settings" gorm:"foreignKey:ID"`
}
type GameSetting struct {
ID uint `json:"id" gorm:"primary_key"`
GameID uint `json:"game_id"`
Name string `json:"name" binding:"required"`
WeaponCategory string `json:"weapon_category"`
Value float64 `json:"value" binding:"required"`

View File

@@ -1,7 +1,7 @@
package models
import (
"InfrantrySkillCalculator/utils"
"InfantrySkillCalculator/utils"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"gorm.io/gorm/logger"
@@ -51,11 +51,23 @@ func ConnectDatabase() {
err = database.AutoMigrate(&Game{})
if err != nil {
log.Fatal(err)
} else {
var game Game
if err := database.First(&game).Error; err != nil {
database.Create(&Game{Name: "Battlefield V", Tag: "BFV"})
database.Create(&Game{Name: "Battlefield 2042", Tag: "BF2042"})
log.Println("Created first games")
}
}
err = database.AutoMigrate(&MetricSetting{})
if err != nil {
log.Fatal(err)
}
err = database.AutoMigrate(&UserSettings{})
if err != nil {
log.Fatal(err)
}
DB = database
}

12
models/user_settings.go Normal file
View File

@@ -0,0 +1,12 @@
package models
type UserSettings struct {
ID uint `json:"id" gorm:"primary_key"`
Username string `json:"username"`
User User `json:"user" gorm:"foreignKey:Username;references:Username"`
ActiveGameID uint `json:"active_game_id"`
ActiveGame Game `json:"active_game" gorm:"foreignKey:ID;references:ActiveGameID"`
SquadColors bool `json:"squad_colors" default:"1"`
CalcMedian bool `json:"calc_median" default:"0"`
UseCache bool `json:"use_cache" default:"1"`
}