62 lines
1.4 KiB
Go
62 lines
1.4 KiB
Go
package handlers
|
|
|
|
import (
|
|
"html/template"
|
|
"log"
|
|
"net/http"
|
|
|
|
"synlotto-website/models"
|
|
)
|
|
|
|
var tmpl = template.Must(template.ParseFiles(
|
|
"templates/layout.html",
|
|
"templates/index.html",
|
|
"templates/new_draw.html",
|
|
))
|
|
|
|
func Home(w http.ResponseWriter, r *http.Request) {
|
|
log.Println("✅ Home hit")
|
|
|
|
var draws []models.Draw
|
|
|
|
err := tmpl.ExecuteTemplate(w, "layout", map[string]interface{}{
|
|
"Page": "index",
|
|
"Data": draws,
|
|
})
|
|
if err != nil {
|
|
log.Println("❌ Template error:", err)
|
|
http.Error(w, "Error rendering homepage", http.StatusInternalServerError)
|
|
}
|
|
}
|
|
|
|
func NewDraw(w http.ResponseWriter, r *http.Request) {
|
|
log.Println("➡️ New draw form opened")
|
|
|
|
err := tmpl.ExecuteTemplate(w, "layout", map[string]interface{}{
|
|
"Page": "new_draw",
|
|
"Data": nil,
|
|
})
|
|
if err != nil {
|
|
log.Println("❌ Template error:", err)
|
|
http.Error(w, "Error rendering form", http.StatusInternalServerError)
|
|
}
|
|
}
|
|
|
|
func Submit(w http.ResponseWriter, r *http.Request) {
|
|
log.Println("📝 Form submission received")
|
|
err := r.ParseForm()
|
|
if err != nil {
|
|
http.Error(w, "Invalid form", http.StatusBadRequest)
|
|
return
|
|
}
|
|
|
|
date := r.FormValue("date")
|
|
numbers := r.FormValue("numbers")
|
|
spend := r.FormValue("spend")
|
|
ret := r.FormValue("return")
|
|
|
|
log.Printf("📅 Date: %s | 🔢 Numbers: %s | 💸 Spend: %s | 💰 Return: %s\n", date, numbers, spend, ret)
|
|
|
|
http.Redirect(w, r, "/", http.StatusSeeOther)
|
|
}
|