forgot to stage
This commit is contained in:
@@ -22,14 +22,14 @@ func CreateSyndicateHandler(db *sql.DB) http.HandlerFunc {
|
|||||||
name := r.FormValue("name")
|
name := r.FormValue("name")
|
||||||
description := r.FormValue("description")
|
description := r.FormValue("description")
|
||||||
|
|
||||||
userID, ok := helpers.GetCurrentUserID(r)
|
userId, ok := helpers.GetCurrentUserID(r)
|
||||||
if !ok || name == "" {
|
if !ok || name == "" {
|
||||||
helpers.SetFlash(w, r, "Invalid data submitted")
|
helpers.SetFlash(w, r, "Invalid data submitted")
|
||||||
http.Redirect(w, r, "/account/syndicates/create", http.StatusSeeOther)
|
http.Redirect(w, r, "/account/syndicates/create", http.StatusSeeOther)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err := storage.CreateSyndicate(db, name, description, userID)
|
_, err := storage.CreateSyndicate(db, userId, name, description)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
helpers.SetFlash(w, r, "Failed to create syndicate")
|
helpers.SetFlash(w, r, "Failed to create syndicate")
|
||||||
} else {
|
} else {
|
||||||
@@ -178,8 +178,6 @@ func SyndicateLogTicketHandler(db *sql.DB) http.HandlerFunc {
|
|||||||
drawDate := r.FormValue("draw_date")
|
drawDate := r.FormValue("draw_date")
|
||||||
method := r.FormValue("purchase_method")
|
method := r.FormValue("purchase_method")
|
||||||
|
|
||||||
balls := helpers.ParseBallFields(r, gameType)
|
|
||||||
|
|
||||||
err := storage.InsertTicket(db, models.Ticket{
|
err := storage.InsertTicket(db, models.Ticket{
|
||||||
UserId: userID,
|
UserId: userID,
|
||||||
GameType: gameType,
|
GameType: gameType,
|
||||||
|
|||||||
@@ -2,7 +2,9 @@ package storage
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
|
"fmt"
|
||||||
"synlotto-website/models"
|
"synlotto-website/models"
|
||||||
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetSyndicatesByOwner(db *sql.DB, ownerID int) []models.Syndicate {
|
func GetSyndicatesByOwner(db *sql.DB, ownerID int) []models.Syndicate {
|
||||||
@@ -191,3 +193,38 @@ func AcceptInvite(db *sql.DB, inviteID, userID int) error {
|
|||||||
`, syndicateID, userID)
|
`, syndicateID, userID)
|
||||||
return err
|
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
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user