add optional prefix to url
This commit is contained in:
@@ -17,6 +17,7 @@ type Config struct {
|
||||
SecretKey string
|
||||
Debug bool
|
||||
MaxContentLength int64 // in bytes
|
||||
URLPrefix string
|
||||
|
||||
// MD Notes App settings
|
||||
AppName string
|
||||
@@ -68,6 +69,7 @@ var defaultConfig = map[string]map[string]string{
|
||||
"SECRET_KEY": "change-this-secret-key",
|
||||
"DEBUG": "false",
|
||||
"MAX_CONTENT_LENGTH": "16", // in MB
|
||||
"URL_PREFIX": "",
|
||||
},
|
||||
"MD_NOTES_APP": {
|
||||
"APP_NAME": "Gobsidian",
|
||||
@@ -148,6 +150,14 @@ func Load() (*Config, error) {
|
||||
config.Debug, _ = SERVERSection.Key("DEBUG").Bool()
|
||||
maxContentMB, _ := SERVERSection.Key("MAX_CONTENT_LENGTH").Int()
|
||||
config.MaxContentLength = int64(maxContentMB) * 1024 * 1024 // Convert MB to bytes
|
||||
// Normalize URL prefix: "" or starts with '/' and no trailing '/'
|
||||
rawPrefix := strings.TrimSpace(SERVERSection.Key("URL_PREFIX").String())
|
||||
if rawPrefix == "/" { rawPrefix = "" }
|
||||
if rawPrefix != "" {
|
||||
if !strings.HasPrefix(rawPrefix, "/") { rawPrefix = "/" + rawPrefix }
|
||||
rawPrefix = strings.TrimRight(rawPrefix, "/")
|
||||
}
|
||||
config.URLPrefix = rawPrefix
|
||||
|
||||
// Load MD_NOTES_APP section
|
||||
notesSection := cfg.Section("MD_NOTES_APP")
|
||||
@@ -340,6 +350,14 @@ func (c *Config) SaveSetting(section, key, value string) error {
|
||||
if size, err := strconv.ParseInt(value, 10, 64); err == nil {
|
||||
c.MaxContentLength = size * 1024 * 1024
|
||||
}
|
||||
case "URL_PREFIX":
|
||||
v := strings.TrimSpace(value)
|
||||
if v == "/" { v = "" }
|
||||
if v != "" {
|
||||
if !strings.HasPrefix(v, "/") { v = "/" + v }
|
||||
v = strings.TrimRight(v, "/")
|
||||
}
|
||||
c.URLPrefix = v
|
||||
}
|
||||
case "MD_NOTES_APP":
|
||||
switch key {
|
||||
|
||||
Reference in New Issue
Block a user