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