aboutsummaryrefslogtreecommitdiff
path: root/go-src/dataValidations.go
diff options
context:
space:
mode:
Diffstat (limited to 'go-src/dataValidations.go')
-rw-r--r--go-src/dataValidations.go21
1 files changed, 20 insertions, 1 deletions
diff --git a/go-src/dataValidations.go b/go-src/dataValidations.go
index b391eb3..34c6f03 100644
--- a/go-src/dataValidations.go
+++ b/go-src/dataValidations.go
@@ -37,19 +37,38 @@ func stringValidRuneAmount(value string, runeStart rune, runeEnd rune, minAmount
return sum >= minAmount
}
+func atLeastOneLetter(value string) bool {
+ return stringValidRuneAmount(value, 'A', 'Z', 1) || stringValidRuneAmount(value, 'a', 'z', 1)
+}
+
+// Between 2 and 40 characters (A-z, 0-9, ., *, _, -, at least one letter)
func stringValidUsername(value string) bool {
return stringValidLength(2, 40, value) &&
stringValidCharacters(value, true, true, '.', '*', '_', '-') &&
- (stringValidRuneAmount(value, 'A', 'Z', 1) || stringValidRuneAmount(value, 'a', 'z', 1))
+ atLeastOneLetter(value)
}
+// Between 5 and 40 characters (any character, but at least one number)
func stringValidPassword(value string) bool {
return stringValidLength(5, 40, value) &&
stringValidCharacters(value, true, true, SpecialCharacters...) &&
stringValidRuneAmount(value, '0', '9', 1)
}
+// Between 2 and 60 characters (A-z, spaces, ', -)
func stringValidName(value string) bool {
return stringValidLength(2, 60, value) &&
stringValidCharacters(value, true, false, ' ', '\'', '-')
}
+
+// Between 2 and 20 characters (A-z, 0-9, spaces, \_, -, at least one letter)
+func stringValidChatName(value string) bool {
+ return stringValidLength(2, 20, value) &&
+ stringValidCharacters(value, true, true, ' ', '_', '-') &&
+ atLeastOneLetter(value)
+}
+
+// Between 0 and 30 characters (any character)
+func stringValidChatDesc(value string) bool {
+ return stringValidLength(0, 30, value)
+}