package main import ( "html/template" "log" "net/http" "os" "192.168.1.180/odonax/filehost-athome/config" "192.168.1.180/odonax/filehost-athome/database" "192.168.1.180/odonax/filehost-athome/handlers" ) func main() { cfgPath := "config.toml" cfg := config.Load(cfgPath) handlers.Cfg = &cfg handlers.CfgPath = cfgPath os.MkdirAll(cfg.DataDir+"/files", 0755) db := database.Open(cfg.DataDir+"/hub.db") defer db.Close() tmpl := template.Must(template.ParseGlob("templates/*.html")) // tmpl, err := template.ParseFiles("templates/home.html") // if err != nil { // log.Fatal("Failed to load template:", err) // } http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { data := map[string]string{ "Name": cfg.SiteName, "Description": "This is where you'll own your files and share them freely.", } tmpl.ExecuteTemplate(w, "home.html", data) }) http.HandleFunc("/setup", handlers.Setup(tmpl.Lookup("setup.html"))) http.HandleFunc("/login", handlers.Login(tmpl.Lookup("login.html"))) http.HandleFunc("/logout", handlers.Logout()) log.Printf("Starting filehost on %s\n", cfg.Port) log.Fatal(http.ListenAndServe(cfg.Port, nil)) }