Всплывающее окно регистрации нового успешного участника Phpbb - PullRequest
0 голосов
/ 19 февраля 2012

Я хотел бы создать всплывающее приветственное сообщение для нового участника, который успешно зарегистрирован.

Но у меня возникла проблема с поиском места для размещения кода, я проверил ucp_register.html ,, но я не думаю, что это отображаемое содержимое после успешной регистрации участника. Может ли кто-нибудь помочь мне, пожалуйста? Спасибо

1 Ответ

0 голосов
/ 04 февраля 2013

Скорее всего, это будет более надежное решение для отображения всплывающего окна при первом входе пользователя в систему в качестве активированного пользователя - после регистрации они могут быть не активированы или могут закрыть окно браузера сразу после регистрации.

Для этого можно добавить столбец (скажем, user_JBL_seen_message INT к таблице phpbb_users в базе данных, а затем изменить файл functions.php, чтобы проверить этот столбец:

В functions.php найдите:

// The following assigns all _common_ variables that may be used at any point in a template.

Перед добавлением:

if($user->data['is_registered'] && $user->data['is_active'] && !$user->data['is_bot'])
{
    if(isset($user->data['user_JBL_seen_message']) && !$user->data['user_JBL_seen_message'])) 
    {
        $showPopup = true;
        $sql = 'UPDATE ' . USERS_TABLE . ' SET user_JBL_seen_message = 1 
          WHERE user_id = ' . (int)$user->data['user_id'];
        if (!$result = $db->sql_query($sql)) 
        {
            return false;
        }
    }
}

Затем найдите:

$template->assign_vars(array(

После добавить:

'JBL_POPUP'        => $showPopup,

Затем вы можете добавить всплывающий HTML-код в файл шаблона total_header.html, где это необходимо ...

<!-- IF JBL_POPUP -->
    .... your HTML popup code here.....

<!-- END IF -->

Если вы не хотите, чтобы существующие пользователи видели всплывающее окно, заполните новый столбец 1сек.

Я также согласен с предложением Дэмиена использовать диалоговое окно jQuery UI, а не всплывающее окно - браузеры большинства пользователей блокируют всплывающие окна. Однако используйте jQuery в режиме noconflict, чтобы избежать конфликтов с другими модами.

...