switched to gorm..

This commit is contained in:
$(pass /github/name)
2024-07-10 14:22:56 +02:00
parent 87e9f71ceb
commit 6ac5491053
27 changed files with 368 additions and 283 deletions

View File

@@ -1,6 +1,8 @@
package server
import (
"net/http"
"GoMembership/internal/config"
"GoMembership/internal/controllers"
"GoMembership/internal/database"
@@ -9,16 +11,17 @@ import (
"GoMembership/internal/routes"
"GoMembership/internal/services"
"GoMembership/pkg/logger"
"net/http"
"github.com/gorilla/mux"
)
func Run() {
cfg := config.LoadConfig()
logger.Info.Printf("Config: %v", cfg)
db := database.Connect(cfg.DB)
defer db.Close()
logger.Info.Printf("Config: %+v", cfg)
db, err := database.InitDB(cfg.DB.Path)
if err != nil {
logger.Error.Fatalf("Couldn't init database: %v", err)
}
emailService := services.NewEmailService(cfg.SMTP.Host, cfg.SMTP.Port, cfg.SMTP.User, cfg.SMTP.Password, cfg.SMTP.AdminEmail)
consentRepo := repositories.NewConsentRepository(db)
@@ -26,11 +29,12 @@ func Run() {
bankAccountRepo := repositories.NewBankAccountRepository(db)
bankAccountService := services.NewBankAccountService(bankAccountRepo)
membershipRepo := repositories.NewMembershipRepository(db)
membershipService := services.NewMembershipService(membershipRepo)
planRepo := repositories.NewSubscriptionModelsRepository(db)
membershipService := services.NewMembershipService(membershipRepo, planRepo)
userRepo := repositories.NewUserRepository(db)
userService := services.NewUserService(userRepo)
userController := controllers.NewUserController(userService, emailService, consentService, bankAccountService, membershipService)
membershipController := controllers.NewMembershipController(membershipService)
router := mux.NewRouter()
// router.Handle("/csrf-token", middlewares.GenerateCSRFTokenHandler()).Methods("GET")
@@ -38,7 +42,7 @@ func Run() {
// router.Use(middlewares.CSRFMiddleware)
router.Use(middlewares.LoggerMiddleware)
routes.RegisterRoutes(router, userController)
routes.RegisterRoutes(router, userController, membershipController)
// create subrouter for teh authenticated area /account
// also pthprefix matches everything below /account
// accountRouter := router.PathPrefix("/account").Subrouter()