diff options
author | mensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f> | 2008-11-14 11:36:23 +0000 |
---|---|---|
committer | mensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f> | 2008-11-14 11:36:23 +0000 |
commit | e530ffa24f8ae9657f23809f265f9f6628325ff3 (patch) | |
tree | 94cd2541830d9faf1f2c99ad6d987f2b6257742f | |
parent | fc5091f407e785799f9cf9ef684f47a2ae298358 (diff) | |
download | semanticscuttle-e530ffa24f8ae9657f23809f265f9f6628325ff3.tar.gz semanticscuttle-e530ffa24f8ae9657f23809f265f9f6628325ff3.tar.bz2 |
Bug fix: test username's length (max 25) when registering (preventing problem with database
git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@155 b3834d28-1941-0410-a4f8-b48e95affb8f
-rw-r--r-- | register.php | 4 | ||||
-rw-r--r-- | services/userservice.php | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/register.php b/register.php index e60a686..b70d724 100644 --- a/register.php +++ b/register.php @@ -39,6 +39,10 @@ if (isset($_POST['submitted'])) { // Check if username already exists } elseif ($userservice->getUserByUsername($posteduser)) { $tplVars['error'] = T_('This username already exists, please make another choice.'); + + // Check if username is valid (length, authorized characters) + } elseif (!$userservice->isValidUsername($posteduser)) { + $tplVars['error'] = T_('This username is not valid (too long, forbidden characters...), please make another choice.'); // Check if e-mail address is valid } elseif (!$userservice->isValidEmail($_POST['email'])) { diff --git a/services/userservice.php b/services/userservice.php index ee62dbb..e50faaa 100644 --- a/services/userservice.php +++ b/services/userservice.php @@ -388,6 +388,18 @@ class UserService { return false; } } + + function isValidUsername($username) { + if (strlen($username) > 24) { + // too long usernames are cut by database and may cause bugs when compared + return false; + } else { + return true; + } + return true; + } + + function isValidEmail($email) { if (eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$", $email)) { |