48 lines
926 B
Go
48 lines
926 B
Go
package handlers
|
|
|
|
import (
|
|
"embed"
|
|
"fmt"
|
|
"html/template"
|
|
"net/http"
|
|
"os"
|
|
"processSupervisor/models"
|
|
)
|
|
|
|
type MainPage struct {
|
|
templates *embed.FS
|
|
Supervisor *models.Supervisor
|
|
}
|
|
|
|
func NewMainPage(templates *embed.FS) (*MainPage, error) {
|
|
fmt.Println(10)
|
|
fmt.Println(os.Getwd())
|
|
var supervisor models.Supervisor
|
|
if _, err := os.Stat("cfg/"); err != nil {
|
|
s, err := models.ReadTemplate("dist/supervisorTemplate.json")
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
supervisor = s
|
|
}
|
|
fmt.Println(11)
|
|
|
|
if err := supervisor.StartProcesses(); err != nil {
|
|
return nil, err
|
|
}
|
|
return &MainPage{
|
|
templates: templates,
|
|
Supervisor: &supervisor,
|
|
}, nil
|
|
}
|
|
|
|
func (m *MainPage) UpdateMainPage(w http.ResponseWriter, r *http.Request) {
|
|
tmpl := template.Must(
|
|
template.New("index.html").ParseFS(
|
|
m.templates,
|
|
"templates/index.html",
|
|
),
|
|
)
|
|
tmpl.Execute(w, nil)
|
|
}
|