Separate database initialization into NewMYSQLdb function

This commit is contained in:
2024-04-28 20:49:41 +07:00
parent 1a7ac48330
commit b4f303463d
10 changed files with 242 additions and 92 deletions

View File

@ -2,6 +2,7 @@ package user
import (
"fmt"
"github.com/fossyy/filekeeper/utils"
"sync"
"time"
@ -26,8 +27,12 @@ type UserWithExpired struct {
var log *logger.AggregatedLogger
var UserCache *Cache
// TESTTING VAR
var database db.Database
func init() {
log = logger.Logger()
database = db.NewMYSQLdb(utils.Getenv("DB_USERNAME"), utils.Getenv("DB_PASSWORD"), utils.Getenv("DB_HOST"), utils.Getenv("DB_PORT"), utils.Getenv("DB_NAME"))
UserCache = &Cache{users: make(map[string]*UserWithExpired)}
ticker := time.NewTicker(time.Hour * 8)
@ -61,8 +66,7 @@ func Get(email string) (*UserWithExpired, error) {
return user, nil
}
var userData UserWithExpired
err := db.DB.Table("users").Where("email = ?", email).First(&userData).Error
userData, err := database.GetUser(email)
if err != nil {
return nil, err
}
@ -75,7 +79,7 @@ func Get(email string) (*UserWithExpired, error) {
AccessAt: time.Now(),
}
return &userData, nil
return UserCache.users[email], nil
}
func DeleteCache(email string) {