make validateNotEmpty more generic
This commit is contained in:
parent
c67be3b668
commit
9c37272ee9
1 changed files with 20 additions and 4 deletions
|
@ -7,6 +7,8 @@ import (
|
|||
"fmt"
|
||||
"strings"
|
||||
"unicode/utf8"
|
||||
|
||||
"code.gitea.io/gitea/modules/timeutil"
|
||||
)
|
||||
|
||||
type Validateable interface {
|
||||
|
@ -22,11 +24,25 @@ func IsValid(v Validateable) (bool, error) {
|
|||
return true, nil
|
||||
}
|
||||
|
||||
func ValidateNotEmpty(value string, fieldName string) []string {
|
||||
if value == "" {
|
||||
return []string{fmt.Sprintf("Field %v may not be empty", fieldName)}
|
||||
func ValidateNotEmpty(value any, fieldName string) []string {
|
||||
isValid := true
|
||||
switch v := value.(type) {
|
||||
case string:
|
||||
if v == "" {
|
||||
isValid = false
|
||||
}
|
||||
case timeutil.TimeStamp:
|
||||
if v.IsZero() {
|
||||
isValid = false
|
||||
}
|
||||
default:
|
||||
isValid = false
|
||||
}
|
||||
return []string{}
|
||||
|
||||
if isValid {
|
||||
return []string{}
|
||||
}
|
||||
return []string{fmt.Sprintf("Field %v may not be empty", fieldName)}
|
||||
}
|
||||
|
||||
func ValidateMaxLen(value string, maxLen int, fieldName string) []string {
|
||||
|
|
Loading…
Reference in a new issue