package routes
import (
"embed"
"html/template"
"net/http"
"git.sr.ht/~gabrielgio/midr/controller"
"git.sr.ht/~gabrielgio/midr/db"
"git.sr.ht/~gabrielgio/midr/worker"
"github.com/gin-gonic/gin"
)
func HandleRequests(f embed.FS) {
models := db.EntryModel{DB: db.DB}
worker := worker.NewWorkder()
env := &controller.Env{
Entries: models,
Worker: worker,
}
env.StartScheduler()
r := gin.Default()
templ := template.Must(template.New("").ParseFS(f, "templates/*.tmpl"))
r.SetHTMLTemplate(templ)
r.StaticFS("/p", http.FS(f))
r.GET("/", env.GetEntries)
r.GET("/entries/", env.GetEntries)
r.GET("entries/createEntry", env.GetEntry)
r.POST("entries/", env.CreateEntry)
r.GET("entries/:id", env.GetEntry)
r.POST("entries/:id", env.UpdateEntry)
r.DELETE("entries/:id", env.DeleteEntry)
r.GET("jobs/", env.GetJobs)
r.Run(":8000")
}