forgot to stage

This commit is contained in:
2025-04-02 23:53:40 +01:00
parent 053ccf3845
commit df6608dda5
2 changed files with 39 additions and 4 deletions

View File

@@ -22,14 +22,14 @@ func CreateSyndicateHandler(db *sql.DB) http.HandlerFunc {
name := r.FormValue("name")
description := r.FormValue("description")
userID, ok := helpers.GetCurrentUserID(r)
userId, ok := helpers.GetCurrentUserID(r)
if !ok || name == "" {
helpers.SetFlash(w, r, "Invalid data submitted")
http.Redirect(w, r, "/account/syndicates/create", http.StatusSeeOther)
return
}
err := storage.CreateSyndicate(db, name, description, userID)
_, err := storage.CreateSyndicate(db, userId, name, description)
if err != nil {
helpers.SetFlash(w, r, "Failed to create syndicate")
} else {
@@ -178,8 +178,6 @@ func SyndicateLogTicketHandler(db *sql.DB) http.HandlerFunc {
drawDate := r.FormValue("draw_date")
method := r.FormValue("purchase_method")
balls := helpers.ParseBallFields(r, gameType)
err := storage.InsertTicket(db, models.Ticket{
UserId: userID,
GameType: gameType,

View File

@@ -2,7 +2,9 @@ package storage
import (
"database/sql"
"fmt"
"synlotto-website/models"
"time"
)
func GetSyndicatesByOwner(db *sql.DB, ownerID int) []models.Syndicate {
@@ -191,3 +193,38 @@ func AcceptInvite(db *sql.DB, inviteID, userID int) error {
`, syndicateID, userID)
return err
}
func CreateSyndicate(db *sql.DB, ownerID int, name, description string) (int64, error) {
tx, err := db.Begin()
if err != nil {
return 0, err
}
defer tx.Rollback()
result, err := tx.Exec(`
INSERT INTO syndicates (name, description, owner_id, created_at)
VALUES (?, ?, ?, ?)
`, name, description, ownerID, time.Now())
if err != nil {
return 0, fmt.Errorf("failed to create syndicate: %w", err)
}
syndicateID, err := result.LastInsertId()
if err != nil {
return 0, fmt.Errorf("failed to get syndicate ID: %w", err)
}
_, err = tx.Exec(`
INSERT INTO syndicate_members (syndicate_id, user_id, accepted)
VALUES (?, ?, 1)
`, syndicateID, ownerID)
if err != nil {
return 0, fmt.Errorf("failed to add owner as member: %w", err)
}
if err := tx.Commit(); err != nil {
return 0, fmt.Errorf("commit failed: %w", err)
}
return syndicateID, nil
}