NonameIpb Опубликовано 7 января, 2018 Поделиться Опубликовано 7 января, 2018 Здравствуйте. Увы, в коде IPB новых версий сложно ориентироваться, поэтому очередной вопрос - знаете ли кто-то, где хранятся регулярные выражения для пароля и логина для регистрации? Версия: 4.2.6 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 7 января, 2018 Поделиться Опубликовано 7 января, 2018 2 часа назад, NonameIpb сказал: где хранятся регулярные выражения для пароля и логина для регистрации? Вообще не понятен вопрос, какие регулярные выражения? Для какой регистрации? Что вы хотите, шаблон вывода авторизации? Таблицу БД, где хранятся МД5 пароли? пхп логику регистрации?? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 On 07.01.2018 at 11:04 PM, Cheshir said: Вообще не понятен вопрос, какие регулярные выражения? Для какой регистрации? Что вы хотите, шаблон вывода авторизации? Таблицу БД, где хранятся МД5 пароли? пхп логику регистрации?? При регистрации php код должен обрабатывать данные, которые вводит пользователь, используя регулярные выражения, чтобы разрешить лишь определённый набор символов для логина и пароля. Например, я не хочу, чтобы было возможно зарегистрировать ник, в котором используются не английские буквы, и т.п. Я вот и спрашиваю, где в коде и прописаны эти регулярные выражения, через которые по идее должен проверяться ник и логин. Just now, NonameIpb said: При регистрации php код должен обрабатывать данные, которые вводит пользователь, используя регулярные выражения, чтобы разрешить лишь определённый набор символов для логина и пароля. Например, я не хочу, чтобы было возможно зарегистрировать ник, в котором используются не английские буквы, и т.п. Я вот и спрашиваю, где в коде и прописаны эти регулярные выражения, через которые по идее должен проверяться ник и логин. должен проверяться логин и пароль* Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 /applications/core/modules/front/system/register.php функция buildRegistrationForm() но, там нет регулярных выражений. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 /* Set username regex */ $args = func_get_args(); if ( isset( $args[3]['accountUsername'] ) and $args[3]['accountUsername'] !== FALSE ) { $args[3]['minLength'] = \IPS\Settings::i()->min_user_name_length; $args[3]['maxLength'] = \IPS\Settings::i()->max_user_name_length; if ( \IPS\Settings::i()->username_characters ) { $args[3]['regex'] = '/^[' . str_replace( '\-', '-', preg_quote( \IPS\Settings::i()->username_characters, '/' ) ) . ']*$/iu'; } } Нашёл в \system\Helpers\Form\Text.php , похоже на то, что я искал, вот только понять не могу, откуда же берутся стандартные значения как мин. и макс. длины логина, так и регулярного выражения для него. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 "\IPS\Settings::i()->min_user_name_length;" - из настроек Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 3 minutes ago, Cheshir said: "\IPS\Settings::i()->min_user_name_length;" - из настроек Это понятно, но всё же задам наиглупейший вопрос. А где эти настройки находятся? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 (изменено) Задаются в АЦ, сохраняются в БД Хм... пользователи - Профили пользователей Это по Имени пользователя Изменено 10 января, 2018 пользователем Cheshir Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 8 minutes ago, Cheshir said: Задаются в АЦ, сохраняются в БД Хм... пользователи - Профили пользователей Это по Имени пользователя Да, до редакции нашёл всё же. За это спасибо, а вот с паролями, судя по всему, функционал уже, поэтому нужно будет в код лезть. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 А чем вам стандартная система сложности пароля не нравится? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 10 января, 2018 Автор Поделиться Опубликовано 10 января, 2018 1 minute ago, Cheshir said: А чем вам стандартная система сложности пароля не нравится? Меня не устраивает то, что в пароль можно вписать русские символы. Читал даже, что при хешировании пароля могут возникнуть потом проблемы. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Cheshir Опубликовано 10 января, 2018 Поделиться Опубликовано 10 января, 2018 Тут копайте /system/3rd_party/phpass/phpass.php Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 17 января, 2018 Автор Поделиться Опубликовано 17 января, 2018 On 10.01.2018 at 2:32 PM, Cheshir said: Тут копайте /system/3rd_party/phpass/phpass.php Здесь лишь класс для проверки надёжности пароля, не более. Можно сделать так, чтобы он русские символы вообще не считал, но бытовой пользователь не поймёт, в чём загвоздка. Неужели нет нигде регулярного выражения для пароля? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Sipsb Опубликовано 17 января, 2018 Поделиться Опубликовано 17 января, 2018 6 минут назад, NonameIpb сказал: Неужели нет нигде регулярного выражения для пароля? Не оно? Спойлер Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 17 января, 2018 Автор Поделиться Опубликовано 17 января, 2018 Just now, Sipsb said: Не оно? Hide contents В никах уже разобрались, это оно. А вот вопрос с паролем не решён. Разрешённые символы в пароле где-то можно поставить? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Sipsb Опубликовано 17 января, 2018 Поделиться Опубликовано 17 января, 2018 3 минуты назад, NonameIpb сказал: Разрешённые символы в пароле где-то можно поставить? Из ACP только тут. Спойлер Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
NonameIpb Опубликовано 17 января, 2018 Автор Поделиться Опубликовано 17 января, 2018 Just now, Sipsb said: Из ACP только тут. Hide contents Это тоже понятно. Если в коде делать, то я так понимаю, что здесь: \system\Helpers\Form\Password.php Вопрос тогда в следующем - чтобы кидать ошибку, если присутствуют запрещённые символы, нужно сделать отдельное исключение. Где эти исключения хранятся? Пример исключения: throw new \InvalidArgumentException( 'login_err_bad_password' ); Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Sipsb Опубликовано 17 января, 2018 Поделиться Опубликовано 17 января, 2018 Почитайте тут https://invisioncommunity.com/4docs/advanced-usage/development/custom-login-handlers-r97/ Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.