mirror of
https://github.com/Dvorinka/MyClubServer.git
synced 2026-06-03 18:22:57 +00:00
update
This commit is contained in:
@@ -69,99 +69,6 @@ func main() {
|
||||
log.Fatalf("Failed to run database migrations: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
// Best-effort: ensure schemas exist and are up-to-date (adds new columns)
|
||||
if err := dbInstance.AutoMigrate(
|
||||
&models.Settings{},
|
||||
&models.User{},
|
||||
&models.Article{},
|
||||
&models.ScoreboardState{},
|
||||
&models.CompetitionAlias{},
|
||||
&models.Team{},
|
||||
&models.Player{},
|
||||
&models.ContactCategory{},
|
||||
&models.Contact{},
|
||||
&models.ContactMessage{},
|
||||
&models.NewsletterSubscription{},
|
||||
&models.Sponsor{},
|
||||
&models.Clothing{},
|
||||
&models.Poll{},
|
||||
&models.PollOption{},
|
||||
&models.PollVote{},
|
||||
&models.NavigationItem{},
|
||||
&models.SocialLink{},
|
||||
&models.PageElementConfig{},
|
||||
&models.ShortLink{},
|
||||
&models.LinkClick{},
|
||||
&models.Comment{},
|
||||
&models.CommentReaction{},
|
||||
&models.CommentBan{},
|
||||
&models.UnbanRequest{},
|
||||
&models.CommentReport{},
|
||||
&models.UserProfile{},
|
||||
&models.PointsTransaction{},
|
||||
&models.Achievement{},
|
||||
&models.UserAchievement{},
|
||||
&models.RewardItem{},
|
||||
&models.RewardRedemption{},
|
||||
&models.MatchOverride{},
|
||||
&models.TeamLogoOverride{},
|
||||
&models.Sweepstake{},
|
||||
&models.SweepstakePrize{},
|
||||
&models.SweepstakeEntry{},
|
||||
&models.SweepstakeWinner{},
|
||||
&models.UploadedFile{},
|
||||
&models.FileUsage{},
|
||||
&models.ErrorEvent{},
|
||||
&models.ManualCompetition{},
|
||||
&models.ManualMatch{},
|
||||
&models.ManualTableRow{},
|
||||
&models.Language{},
|
||||
&models.Translation{},
|
||||
&models.ContentTranslation{},
|
||||
&models.UserLanguagePreference{},
|
||||
// E-shop models (best-effort auto-migrate)
|
||||
&models.EshopProductCategory{},
|
||||
&models.EshopProduct{},
|
||||
&models.EshopProductVariant{},
|
||||
&models.EshopCart{},
|
||||
&models.EshopCartItem{},
|
||||
&models.EshopOrder{},
|
||||
&models.EshopOrderItem{},
|
||||
&models.EshopPayment{},
|
||||
&models.EshopShippingLabel{},
|
||||
&models.EshopSettings{},
|
||||
// Facility management models
|
||||
&models.Facility{},
|
||||
&models.FacilityAvailabilityRule{},
|
||||
&models.FacilityBooking{},
|
||||
&models.FacilityEquipment{},
|
||||
&models.FacilityMaintenance{},
|
||||
&models.WeatherCondition{},
|
||||
&models.FacilityBookingTemplate{},
|
||||
&models.Event{},
|
||||
&models.EventAttachment{},
|
||||
&models.QRCode{},
|
||||
// Financial models
|
||||
&models.Budget{},
|
||||
&models.Sponsorship{},
|
||||
&models.SponsorshipPayment{},
|
||||
&models.SponsorshipDocument{},
|
||||
&models.Expense{},
|
||||
&models.ExpenseDocument{},
|
||||
&models.FinancialReport{},
|
||||
&models.FinancialSettings{},
|
||||
// Invoice models
|
||||
&models.Invoice{},
|
||||
&models.InvoiceItem{},
|
||||
&models.InvoicePayment{},
|
||||
&models.InvoiceCustomer{},
|
||||
&models.InvoiceSettings{},
|
||||
&models.InvoiceSequence{},
|
||||
&models.InvoiceTemplate{},
|
||||
); err != nil {
|
||||
log.Printf("Warning: AutoMigrate failed: %v", err)
|
||||
}
|
||||
var settings models.Settings
|
||||
_ = dbInstance.First(&settings).Error // ignore not found
|
||||
if config.AppConfig != nil {
|
||||
@@ -223,8 +130,8 @@ func main() {
|
||||
// Set max multipart memory to match upload size limit (default is 32MB)
|
||||
r.MaxMultipartMemory = config.AppConfig.MaxUploadSize
|
||||
|
||||
// Enable gzip compression for responses
|
||||
r.Use(gzip.Gzip(gzip.DefaultCompression))
|
||||
// Favor faster compression to reduce server CPU under load.
|
||||
r.Use(gzip.Gzip(gzip.BestSpeed))
|
||||
|
||||
// Apply strict security headers
|
||||
r.Use(middleware.SecurityHeaders())
|
||||
|
||||
Reference in New Issue
Block a user