From 3d64ed9ea82ba7a24a9689f67aa688fef7976ad2 Mon Sep 17 00:00:00 2001 From: BlueRaja Date: Tue, 4 Jun 2013 06:18:51 -0500 Subject: Fix for name filter causing names to be longer than they should --- pages/cp.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pages/cp.php b/pages/cp.php index 0f355f4..88c391a 100644 --- a/pages/cp.php +++ b/pages/cp.php @@ -34,9 +34,11 @@ include('./includes/maps.php'); include_once('./includes/sqlEmbedded.php'); include_once('./includes/chats.php'); +define('NAME_MAX_LENGTH', 25); + function validatename($name) { if (strlen($name) < 1) return "Name to short"; - if (strlen($name) > 25) return "Name is too long (".strlen($name)."/25)"; + if (strlen($name) > NAME_MAX_LENGTH) return "Name is too long (".strlen($name)."/25)"; if (!preg_match("~[a-zA-Z0-9]\b~", $name)) return "Must contain atleast 1 Alpha-Numerical character"; return true; @@ -75,8 +77,9 @@ if (isset($_POST['updateSettings']) AND $_POST['updateSettings'] == 'true') { $nameError = validatename($inputname); //$inputname = htmlentities($inputname); - $inputname = htmlspecialchars($inputname, ENT_COMPAT | ENT_HTML5); $inputname = filterStringForBadLanguage($inputname); + $inputname = substr($inputname, 0, NAME_MAX_LENGTH); //Prevent chat filter from increasing name length too much + $inputname = htmlspecialchars($inputname, ENT_COMPAT | ENT_HTML5); $inputname = str_replace(" ", "  ", $inputname); if ($nameError === true) { -- cgit v1.2.3