$value) { if (empty($value) && in_array($key, $required_fields) === true) { $errors[] = 'You need to fill in all fields.'; break 1; } } // check errors (= user exist, pass long enough if (empty($errors) === true) { /* Token used for cross site scripting security */ if (!Token::isValid($_POST['token'])) { $errors[] = 'Token is invalid.'; } if ($config['use_captcha']) { include_once 'captcha/securimage.php'; $securimage = new Securimage(); if ($securimage->check($_POST['captcha_code']) == false) { $errors[] = 'Captcha image verification was submitted wrong.'; } } if (user_exist($_POST['username']) === true) { $errors[] = 'Sorry, that username already exist.'; } // Don't allow "default admin names in config.php" access to register. $isNoob = in_array(strtolower($_POST['username']), $config['page_admin_access']) ? true : false; if ($isNoob) { $errors[] = 'This account name is blocked for registration.'; } if (strtolower($_POST['username']) === true) { $errors[] = 'Sorry, that username already exist.'; } if (preg_match("/^[a-zA-Z0-9]+$/", $_POST['username']) == false) { $errors[] = 'Your account name can only contain characters a-z, A-Z and 0-9.'; } // name restriction $resname = explode(" ", $_POST['username']); foreach($resname as $res) { if(in_array(strtolower($res), $config['invalidNameTags'])) { $errors[] = 'Your username contains a restricted word.'; } else if(strlen($res) == 1) { $errors[] = 'Too short words in your name.'; } } // end name restriction if (strlen($_POST['password']) < 6) { $errors[] = 'Your password must be at least 6 characters.'; } if (strlen($_POST['password']) > 33) { $errors[] = 'Your password must be less than 33 characters.'; } if ($_POST['password'] !== $_POST['password_again']) { $errors[] = 'Your passwords do not match.'; } if (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) === false) { $errors[] = 'A valid email address is required.'; } if (user_email_exist($_POST['email']) === true) { $errors[] = 'That email address is already in use.'; } if ($_POST['selected'] != 1) { $errors[] = 'You are only allowed to have an account if you accept the rules.'; } if (validate_ip(getIP()) === false && $config['validate_IP'] === true) { $errors[] = 'Failed to recognize your IP address. (Not a valid IPv4 address).'; } } } ?>