Implement KeepUpdated. Switch to Logrus logger. Relocate score-related functions.

This commit is contained in:
MaxJa4
2024-01-22 16:03:18 +01:00
parent 7cdc18bd78
commit da1ff4e4e5
16 changed files with 348 additions and 280 deletions

View File

@@ -1,11 +1,11 @@
package models
import (
"InfantrySkillCalculator/utils"
"cache"
"github.com/glebarez/sqlite"
"gorm.io/gorm"
"gorm.io/gorm/logger"
"log"
"os"
"time"
)
@@ -26,49 +26,49 @@ func ConnectDatabase() {
err = database.AutoMigrate(&Clan{})
if err != nil {
log.Fatal(err)
utils.Logger.Fatal(err)
}
err = database.AutoMigrate(&Player{})
if err != nil {
log.Fatal(err)
utils.Logger.Fatal(err)
}
err = database.AutoMigrate(&User{})
if err != nil {
log.Fatal(err)
utils.Logger.Fatal(err)
}
err = database.AutoMigrate(&ActivationCode{})
if err != nil {
log.Fatal(err)
utils.Logger.Fatal(err)
}
err = database.AutoMigrate(&Game{})
if err != nil {
log.Fatal(err)
utils.Logger.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")
utils.Logger.Println("Created first games")
}
}
err = database.AutoMigrate(&UserSettings{})
if err != nil {
log.Fatal(err)
utils.Logger.Fatal(err)
}
DB = database
}
func ConnectCache(playerCacheLifetime time.Duration) {
func ConnectCache(playerCacheLifetime time.Duration, expireCallback func(key string)) {
address := os.Getenv("REDIS_ADDRESS")
if address == "" {
address = "127.0.0.1:6379"
}
PlayerCache = cache.NewPlayerCache(address, playerCacheLifetime)
PlayerCache = cache.NewPlayerCache(address, playerCacheLifetime, expireCallback)
if err := PlayerCache.Connect(); err != nil {
PlayerCache = nil
log.Fatal("Failed to connect to Redis! " + err.Error())
utils.Logger.Fatal("Failed to connect to Redis! " + err.Error())
}
}