Я использую expressionengine в качестве CMS, но хочу переопределить проверку ядра для новых пользователей. Когда кто-то регистрируется как новый пользователь, система проверяет, не занято ли уже имя экрана. Если это так, то он выдает флаг ошибки.
Я нашел раздел кода, который выполняет проверку, но я хотел бы изменить его так, чтобы вместо броска и ошибки к имени экрана добавлялся пробел и число (один над значением счетчика.
Таким образом, «Джон Смит» заменяется на «Джон Смит 3» (при условии, что в БД есть еще два имени экрана «Джон Смит»).
Как я могу изменить этот код, чтобы добиться этого?
/** -------------------------------------
/** Is screen name taken?
/** -------------------------------------*/
if (strtolower($this->cur_screen_name) != strtolower($this->screen_name))
{
$query = $DB->query("SELECT COUNT(*) AS count FROM exp_members WHERE screen_name = '".$DB->escape_str($this->screen_name)."'");
if ($query->row['count'] > 0)
{
$this->errors[] = $LANG->line('screen_name_taken');
}
}