package v1 import ( "github.com/gorilla/mux" "net/http" "strconv" ) func RegisterClubRoutes(r *mux.Router) { r.HandleFunc("/clubs", resolveClubs).Methods("GET", "OPTIONS", "POST") r.HandleFunc("/clubs/{id:[0-9]+}", resolveClub).Methods("GET", "OPTIONS") } func resolveClubs(w http.ResponseWriter, r *http.Request) { if r.Method == "GET" { userId, err := GetCurrentUserID(r) if err != nil { Error(w, err) return } clubs, err := GetClubs(userId) Response(w, err, clubs) } } func resolveClub(w http.ResponseWriter, r *http.Request) { vars := mux.Vars(r) rawId, _ := strconv.Atoi(vars["id"]) id := uint16(rawId) if r.Method == http.MethodGet { userId, err := GetCurrentUserID(r) if err != nil { Error(w, err) return } club, err := GetClub(id, userId) Response(w, err, club) } }