47 lines
856 B
Go
47 lines
856 B
Go
package handlers
|
|
|
|
import (
|
|
"golias/config"
|
|
"golias/pkg/cache"
|
|
"html/template"
|
|
"log/slog"
|
|
"net/http"
|
|
"os"
|
|
)
|
|
|
|
var (
|
|
log *slog.Logger
|
|
cfg *config.Config
|
|
memcache cache.Cache
|
|
)
|
|
|
|
func init() {
|
|
log = slog.New(slog.NewJSONHandler(os.Stderr, &slog.HandlerOptions{
|
|
Level: slog.LevelDebug,
|
|
AddSource: true,
|
|
}))
|
|
memcache = cache.MemCache
|
|
cfg = config.LoadConfigOrDefault("")
|
|
}
|
|
|
|
var roundWords = map[string]string{
|
|
"hamster": "blue",
|
|
"child": "red",
|
|
"wheel": "white",
|
|
"condition": "black",
|
|
"test": "white",
|
|
}
|
|
|
|
func HandlePing(w http.ResponseWriter, r *http.Request) {
|
|
w.Write([]byte("pong"))
|
|
}
|
|
|
|
func HandleHome(w http.ResponseWriter, r *http.Request) {
|
|
tmpl, err := template.ParseGlob("components/*.html")
|
|
if err != nil {
|
|
abortWithError(w, err.Error())
|
|
return
|
|
}
|
|
tmpl.ExecuteTemplate(w, "main", roundWords)
|
|
}
|