28 lines
496 B
Go
28 lines
496 B
Go
package resthome
|
|
|
|
import (
|
|
"context"
|
|
"net/http"
|
|
|
|
"git.schreifuchs.ch/schreifuchs/schreifuchs.ch/internal/components/page"
|
|
)
|
|
|
|
type Handler struct {
|
|
src pageService
|
|
}
|
|
|
|
func New(mux *http.ServeMux, srv pageService) *Handler {
|
|
h := &Handler{
|
|
src: srv,
|
|
}
|
|
|
|
mux.HandleFunc("GET /{$}", h.home)
|
|
mux.HandleFunc("GET /{uid}", h.page)
|
|
return h
|
|
}
|
|
|
|
type pageService interface {
|
|
GetPages(ctx context.Context) ([]page.PageHeader, error)
|
|
GetPage(ctx context.Context, uid string) (page.Page, error)
|
|
}
|