Вы не зашли.
Страницы 1
Не в сети
А, понятно, а я все в настроках ищу. Спасибо.
Не в сети
Работало, но почему-то перестало. Возможно связано с патчем по поводу удаления новостей. В настройках auth_basic пробовал рус+енг, алл - все равно кириллицу не пускает.
Не в сети
Версия плагина точно 0.20 ?
Не в сети
Не в сети
Я украинские не пробовал, тоже нужно включить.
Не в сети
legenda, штатно - никак.
А вообще можно открыть auth_basic.php ~139 и править регулярные выражения после:
		// Проверяем логин на запрещенные символы
		$csError = false;
		switch (pluginGetVariable('auth_basic', 'regcharset')) {Не в сети
Вот этот кусок
        switch (pluginGetVariable('auth_basic', 'regcharset')) {
            case 0:
                if (!preg_match('#^[A-Za-z0-9\.\_\-]+$#s', $values['login'])) {
                    $csError = true;
                }
                break;
            case 1:
                if (!preg_match('#^[А-Яа-яёЁ0-9\.\_\-]+$#s', $values['login'])) {
                    $csError = true;
                }
                break;
            case 2:
                if (!preg_match('#^[А-Яа-яёЁA-Za-z0-9\.\_\-]+$#s', $values['login'])) {
                    print "CASE2-err [".$values['login']."]";
                    $csError = true;
                }
                break;
            case 3:
                if (!preg_match('#^[\x21-\x7e\xc0-\xffёЁ]+$#s', $values['login'])) {
                    $csError = true;
                }
                break;
            case 4:
                break;
}
Но как PHP поймет что А-Я имеются ввиду украинские ? Наверно каждую букву отдельно надо перечислить. Или хотя бы чисто украинские.
Не в сети
нифига не работает, я сделал так
		// Проверяем логин на запрещенные символы
		$csError = false;
		switch (pluginGetVariable('auth_basic', 'regcharset')) {
			case 0:
				if (!preg_match('#^[A-Za-z0-9\.\_\-]+$#s', $values['login'])) {
					$csError = true;
				}
				break;
			case 1:
				if (!preg_match('#^[А-Яа-яёЁІіЇїЄє0-9\.\_\-]+$#s', $values['login'])) {
					$csError = true;
				}
				break;
			case 2:
				if (!preg_match('#^[А-Яа-яёЁІіЇїЄєA-Za-z0-9\.\_\-]+$#s', $values['login'])) {
					print "CASE2-err [".$values['login']."]";
					$csError = true;
				}
				break;
			case 3:
				if (!preg_match('#^[\x21-\x7e\xc0-\xffёЁІіїЇєЄ]+$#s', $values['login'])) {
					$csError = true;
				}
				break;
			case 4:
				break;
		}но ни какой вариант буквы ІіїЇєЄ не пропускает.
Кстате меня вот еще один вопрос интерисует, как запретить гостям оставлять коммены под зарегистрироваными логинами, например любой может зайти и написать под ником admin притом что админ я) или каким-то еще
Изменено legenda (2012-01-23 22:55:44)
Не в сети
Страницы 1