diff --git a/config/config.go b/config/config.go index 5ca1358..ea8754f 100644 --- a/config/config.go +++ b/config/config.go @@ -10,7 +10,6 @@ const ( type ( ServerCfg struct { - Host string `ini:"host"` Port int `ini:"port"` } @@ -25,6 +24,7 @@ type ( AppCfg struct { SiteName string `ini:"site_name"` + Host string `ini:"host"` // Site appearance Theme string `ini:"theme"` @@ -52,7 +52,6 @@ type ( func New() *Config { return &Config{ Server: ServerCfg{ - Host: "http://localhost:8080", Port: 8080, }, Database: DatabaseCfg{ @@ -61,6 +60,7 @@ func New() *Config { Port: 3306, }, App: AppCfg{ + Host: "http://localhost:8080", Theme: "write", WebFonts: true, SingleUser: true, diff --git a/config/setup.go b/config/setup.go index 3eabce2..5ba2053 100644 --- a/config/setup.go +++ b/config/setup.go @@ -42,9 +42,9 @@ func Configure() error { prompt = promptui.Prompt{ Label: "Public-facing host", Validate: validateDomain, - Default: c.Server.Host, + Default: c.App.Host, } - c.Server.Host, err = prompt.Run() + c.App.Host, err = prompt.Run() if err != nil { return err } diff --git a/nodeinfo.go b/nodeinfo.go index ae50e9f..3318fb4 100644 --- a/nodeinfo.go +++ b/nodeinfo.go @@ -15,7 +15,7 @@ type nodeInfoResolver struct { func nodeInfoConfig(cfg *config.Config) *nodeinfo.Config { name := cfg.App.SiteName return &nodeinfo.Config{ - BaseURL: cfg.Server.Host, + BaseURL: cfg.App.Host, InfoURL: "/api/nodeinfo", Metadata: nodeinfo.Metadata{ diff --git a/routes.go b/routes.go index 45e3be9..fcc9d1c 100644 --- a/routes.go +++ b/routes.go @@ -12,8 +12,7 @@ import ( func initRoutes(handler *Handler, r *mux.Router, cfg *config.Config, db *datastore) { isSingleUser := !cfg.App.MultiUser - // Write.as router - hostSubroute := cfg.Server.Host[strings.Index(cfg.Server.Host, "://")+3:] + hostSubroute := cfg.App.Host[strings.Index(cfg.App.Host, "://")+3:] if isSingleUser { hostSubroute = "{domain}" } else { diff --git a/session.go b/session.go index bd768cb..931b87b 100644 --- a/session.go +++ b/session.go @@ -27,7 +27,7 @@ func initSession(app *app) *sessions.CookieStore { Path: "/", MaxAge: sessionLength, HttpOnly: true, - Secure: strings.HasPrefix(app.cfg.Server.Host, "https://"), + Secure: strings.HasPrefix(app.cfg.App.Host, "https://"), } return store }