GoWeb/routes/get.go

34 lines
779 B
Go

package routes
import (
"GoWeb/app"
"GoWeb/controllers"
"io/fs"
"log/slog"
"net/http"
)
// Get defines all project get routes
func Get(app *app.App) {
// Get controller struct initialize
getController := controllers.Get{
App: app,
}
// Serve static files
staticFS, err := fs.Sub(app.Res, "static")
if err != nil {
slog.Error(err.Error())
return
}
staticHandler := http.FileServer(http.FS(staticFS))
http.Handle("/static/", http.StripPrefix("/static/", staticHandler))
slog.Info("Serving static files from embedded file system /static")
// Pages
http.HandleFunc("/", getController.ShowHome)
http.HandleFunc("/login", getController.ShowLogin)
http.HandleFunc("/register", getController.ShowRegister)
http.HandleFunc("/logout", getController.Logout)
}