Since there are some code in register.php.t to sanitize alias as well as login, users could not use multi-byte characters in their alias.
To solve this, I make another function named 'sanitize_alias'(a copy from sanitize_login of coz):
function sanitize_login($alias)
{
for ($i = 0; $i < 32; $i++) $list[] = chr($i);
return str_replace($list, array_fill(0, count($list), ''), $alias);
}
then change the Alias Check code from
if (($_POST['reg_alias'] = trim(sanitize_login($_POST['reg_alias'])))) {
if (is_login_blocked($_POST['reg_alias'])) {
set_err('reg_alias', '{TEMPLATE: register_err_alias_notallowed}');
}
if (strlen($_POST['reg_alias']) > $GLOBALS['MAX_LOGIN_SHOW']) {
to
if (($_POST['reg_alias'] = trim(sanitize_alias($_POST['reg_alias'])))) {
if (strlen($_POST['reg_alias']) > $GLOBALS['MAX_LOGIN_SHOW']) {
A quick and dirty hack.
Could this problem be solved in the next release?