summaryrefslogtreecommitdiff
path: root/includes/model
diff options
context:
space:
mode:
authormsquare <msquare@notrademark.de>2019-04-28 14:34:04 +0200
committermsquare <msquare@notrademark.de>2019-04-28 14:39:49 +0200
commit4f1cef546e2bd1ff21ed1031c46599010ee9033a (patch)
tree750f4b33647b3c60fe8534ab0b18d81ef66fe6a5 /includes/model
parent819677c9025471c8951ead7905bcde2e3ed635c5 (diff)
better nick validation, fixes #429
Diffstat (limited to 'includes/model')
-rw-r--r--includes/model/User_model.php13
1 files changed, 11 insertions, 2 deletions
diff --git a/includes/model/User_model.php b/includes/model/User_model.php
index d47b2915..a928d895 100644
--- a/includes/model/User_model.php
+++ b/includes/model/User_model.php
@@ -112,11 +112,20 @@ function Users_by_angeltype($angeltype)
* Nick is trimmed.
*
* @param string $nick
- * @return string
+ * @return ValidationResult
*/
function User_validate_Nick($nick)
{
- return preg_replace('/([^\p{L}\p{N}\-_. ]+)/ui', '', trim($nick));
+ $nick = trim($nick);
+
+ if(strlen($nick) == 0 || strlen($nick) > 23) {
+ return new ValidationResult(false, $nick);
+ }
+ if(preg_match('/([^\p{L}\p{N}\-_. ]+)/ui', $nick)) {
+ return new ValidationResult(false, $nick);
+ }
+
+ return new ValidationResult(true, $nick);
}
/**