portfolio/api/apiRoutes.go
2025-02-24 00:16:27 +01:00

35 lines
1017 B
Go

package api
import (
"net/http"
"portfolio/api/handlers"
)
func Routes() *http.ServeMux {
// Create a new request multiplexer
// Take incoming requests and dispatch them to the matching webHandler
mux := http.NewServeMux()
// routes
mux.HandleFunc("/", handlers.CatchAllHandler)
mux.HandleFunc("GET /check", handlers.CheckRoleHandler)
//user
mux.HandleFunc("GET /user/{id}", handlers.GetUserHandler)
//auth
mux.HandleFunc("POST /login", handlers.Login)
mux.HandleFunc("POST /register", handlers.CreateUserHandler)
mux.HandleFunc("GET /htmx/canEdit", handlers.CanEdit)
//Project
mux.HandleFunc("POST /project", handlers.CreateProjectHandler)
mux.HandleFunc("PATCH /project/{id}", handlers.UpdateProjectHandler)
mux.HandleFunc("PATCH /projects", handlers.UpdateProjectsHandler)
mux.HandleFunc("GET /project/{id}", handlers.GetProjectHandler)
mux.HandleFunc("GET /projects", handlers.GetProjectsHandler)
mux.HandleFunc("GET /projects/backup", handlers.GetProjectsBackupHandler)
return mux
}