portfolio/api/apiRoutes.go

35 lines
1020 B
Go
Raw Normal View History

2024-05-16 18:42:31 +02:00
package api
2024-05-16 17:59:21 +02:00
import (
"net/http"
"portfolio/api/handlers"
)
func ApiRoutes() *http.ServeMux {
// Create a new request multiplexer
// Take incoming requests and dispatch them to the matching webHandler
mux := http.NewServeMux()
2024-05-19 23:56:53 +02:00
// routes
2024-05-16 18:42:31 +02:00
mux.HandleFunc("/", handlers.CatchAllHandler)
2024-05-19 23:56:53 +02:00
mux.HandleFunc("GET /check", handlers.CheckRoleHandler)
//user
mux.HandleFunc("GET /user/{id}", handlers.GetUserHandler)
2024-05-19 23:56:53 +02:00
//auth
2024-05-19 17:49:20 +02:00
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)
2024-09-12 15:34:45 +02:00
mux.HandleFunc("GET /projects/backup", handlers.GetProjectsBackupHandler)
2024-05-16 17:59:21 +02:00
return mux
}