package validator import ( "RenewCMS/internal/domain/image" "regexp" "github.com/go-playground/validator/v10" ) const inviteEmailTag = "inviteemail" const variantNameTag = "variantname" var inviteEmailPattern = regexp.MustCompile(`^[^\s@]+@[^\s@.]+(\.[^\s@.]+)+$`) var Validate *validator.Validate func InitValidator() { Validate = validator.New() _ = Validate.RegisterValidation(inviteEmailTag, isInviteEmail) _ = Validate.RegisterValidation(variantNameTag, isVariantName) } func isVariantName(field validator.FieldLevel) bool { return image.IsValidVariantName(field.Field().String()) } func isInviteEmail(field validator.FieldLevel) bool { return inviteEmailPattern.MatchString(field.Field().String()) }