diff --git a/backend/internal/entity/certificate/model.go b/backend/internal/entity/certificate/model.go index ac276fc..7dec8f2 100644 --- a/backend/internal/entity/certificate/model.go +++ b/backend/internal/entity/certificate/model.go @@ -100,6 +100,9 @@ func (m *Model) Save() error { m.setDefaultStatus() + // ensure name is trimmed of whitespace + m.Name = strings.TrimSpace(m.Name) + if m.ID == 0 { m.ID, err = Create(m) } else { diff --git a/backend/internal/entity/setting/model.go b/backend/internal/entity/setting/model.go index e66d727..05e9061 100644 --- a/backend/internal/entity/setting/model.go +++ b/backend/internal/entity/setting/model.go @@ -55,6 +55,9 @@ func (m *Model) Touch(created bool) { func (m *Model) Save() error { var err error + // ensure name is trimmed of whitespace + m.Name = strings.TrimSpace(m.Name) + if m.ID == 0 { m.ID, err = Create(m) } else { diff --git a/backend/internal/entity/upstream/model.go b/backend/internal/entity/upstream/model.go index 408a878..d1d189a 100644 --- a/backend/internal/entity/upstream/model.go +++ b/backend/internal/entity/upstream/model.go @@ -2,6 +2,7 @@ package upstream import ( "fmt" + "strings" "time" "npm/internal/database" @@ -73,6 +74,9 @@ func (m *Model) Save(skipConfiguration bool) error { return fmt.Errorf("User ID must be specified") } + // ensure name is trimmed of whitespace + m.Name = strings.TrimSpace(m.Name) + if !skipConfiguration { // Set this upstream as requiring reconfiguration m.Status = status.StatusReady