21 lines
463 B
Go
21 lines
463 B
Go
package service
|
|
|
|
import (
|
|
"fmt"
|
|
"regexp"
|
|
)
|
|
|
|
var (
|
|
safeInputRegex = regexp.MustCompile(`^[a-zA-Z0-9ÄÖÜäöüß, -]+$`)
|
|
)
|
|
|
|
func validateString(value string, fieldName string) error {
|
|
if value == "" {
|
|
return fmt.Errorf("field \"%s\" needs to be set: %w", fieldName, ErrBadRequest)
|
|
} else if !safeInputRegex.MatchString(value) {
|
|
return fmt.Errorf("use only letters, dashes and spaces for \"%s\": %w", fieldName, ErrBadRequest)
|
|
} else {
|
|
return nil
|
|
}
|
|
}
|