1

Тема: Регистрация пользователей

Доброго времени суток!

Подскажите неучу, как разрешить регистрацию пользователей только с одного/нескольких доменов?
Спасибо!

Поделиться

2

Re: Регистрация пользователей

zroyboy пишет:

Доброго времени суток!

Подскажите неучу, как разрешить регистрацию пользователей только с одного/нескольких доменов?
Спасибо!

Как это с доменов?

Поделиться

3

Re: Регистрация пользователей

Настройки форума позволяют заблокировать пользователей или регистрацию с каких-то адресов (example@mail.ru) и доменов (*@mail.ru), а мне нужно ровно наоборот, запретить ВСЕ адреса, кроме моего домена *@example.com, блокировка по IP не вариант.

Поделиться

4

Re: Регистрация пользователей

Вот тема по созданию расширений (Please log in or register to see this URL)
Вам нужно создать расширение с таким хуком:

        <hook id="em_fn_is_valid_email_start"><![CDATA[
        return strpos($email, '@example.com') > 0 ? null : false;
        ]]></hook>

Вместо @example.com пишите ваш домен.

Важно! Чтобы это расширение правильно заработало, следует скачать с гитхаб последний вариант движка (Please log in or register to see this URL) (зеленая кнопка), так как там были внесены изменения в проверки хуков. Перед любыми изменениями на сайте следует сделать бекап базы и копию каталога форума с сервера.

Моя сборка FluxBB 1.5 - fluxbb.qb7.ru, парсер сообщений с бб-кодами "Parserus" и анализатор useragent "UserAgentAnalyzer" - github.com/MioVisman/

Сайт Visman

Поделиться

5

Re: Регистрация пользователей

Поставил, пускает пускает с других адресов.

Поделиться

6 (14.08.2018 12:15 отредактировано Visman)

Re: Регистрация пользователей

Так пробуйте:

<hook id="em_fn_is_valid_email_start"><![CDATA[
        return strlen($email) <= 80 && preg_match('/^(([^<>()[\]\\.,;:\s@"\']+(\.[^<>()[\]\\.,;:\s@"\']+)*)|("[^"\']+"))@example\.com$/', $email);
        ]]></hook>

Вместо @example\.com свой домен (точку экранировать как тут).

Моя сборка FluxBB 1.5 - fluxbb.qb7.ru, парсер сообщений с бб-кодами "Parserus" и анализатор useragent "UserAgentAnalyzer" - github.com/MioVisman/

Сайт Visman

Поделиться

7

Re: Регистрация пользователей

Пускает, блин.

Добавлено спустя 29 секунд:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE extension SYSTEM "ext-1.0.dtd">

<extension engine="1.0">
  <id>block_all_registration</id>
  <title>Block_all</title>
  <version>1.0</version>
  <description>Block_all_registration, exception *mirmasel.ru</description>
  <author>zroyboy</author>
  <minversion>1.4.4</minversion>
  <maxtestedon>1.4.4</maxtestedon>
  <hooks>
   <hook id="em_fn_is_valid_email_start"><![CDATA[
        return strlen($email) <= 80 && preg_match('/^(([^<>()[\]\\.,;:\s@"\']+(\.[^<>()[\]\\.,;:\s@"\']+)*)|("[^"\']+"))@mirmasel\.ru$/', $email);
        ]]></hook>
  </hooks>
</extension>

Поделиться

8

Re: Регистрация пользователей

zroyboy, в папке кеша в файле cache_hooks.php, что в элементе em_fn_is_valid_email_start массива прописано?

 'em_fn_is_valid_email_start' => 
  array (
    0 => ...
,   1 => ...
, .....
  ),
Моя сборка FluxBB 1.5 - fluxbb.qb7.ru, парсер сообщений с бб-кодами "Parserus" и анализатор useragent "UserAgentAnalyzer" - github.com/MioVisman/

Сайт Visman

Поделиться

9

Re: Регистрация пользователей

Вот:

'em_fn_is_valid_email_start' => 
  array (
    0 => '$GLOBALS[\'ext_info_stack\'][] = array(
\'id\'                => \'block_all_registration\',
\'path\'            => FORUM_ROOT.\'extensions/block_all_registration\',
\'url\'            => $GLOBALS[\'base_url\'].\'/extensions/block_all_registration\',
\'dependencies\'    => array (
)
);
$ext_info = $GLOBALS[\'ext_info_stack\'][count($GLOBALS[\'ext_info_stack\']) - 1];

return strlen($email) <= 80 && preg_match(\'/^(([^<>()[\\]\\\\.,;:\\s@"\\\']+(\\.[^<>()[\\]\\\\.,;:\\s@"\\\']+)*)|("[^"\\\']+"))@mirmasel\\.ru$/\', $email);

Поделиться

10

Re: Регистрация пользователей

zroyboy, тут все правильно.
А движок то обновили?

В файле include/email.php, что находится в функции is_valid_email()?

    if ($return != null)
        return $return;

или

    if ($return !== null)
        return $return;

?

Должен быть второй вариант для правильной работы.

Моя сборка FluxBB 1.5 - fluxbb.qb7.ru, парсер сообщений с бб-кодами "Parserus" и анализатор useragent "UserAgentAnalyzer" - github.com/MioVisman/

Сайт Visman

Поделиться

11

Re: Регистрация пользователей

Виноват, думал у меня обновленный движок.
Обновил, заработало.

Поделиться