Документация для разработчиков
Темная тема

GetMessagePage

Описание и параметры

int
GetMessagePage(
 int ID,
 int mess_per_page,
 array arUserGroups,
 bool TID = false,
 array arAddParams
);

Возвращает страницу, на которой будет находиться сообщение с кодом ID для пользователя, входящего в группы arUserGroups, при постраничном показе с mess_per_page сообщениями на странице. Метод статический.

Параметры функции

ПараметрОписаниеC версии
ID Код сообщения.
mess_per_page Количество сообщений на страницу. Обычно равно переменной $FORUM_MESSAGES_PER_PAGE, которая определяется модулем форума. Эта переменная инициализируется из настроек модуля форума.
arUserGroups Массив групп, в которые входит пользователь. Для текущего пользователя он возвращается методом $USER->GetUserGroupArray().
TID Код темы форума. Необязательный. По умолчанию равен False. 4.0.3
arAddParams Массив параметров, принимает на вход следующие ключи:
  • ORDER_DIRECTION - сортировка (можно сказать, обратная навигация), принимает значения DESC/ASC.
  • FILTER - массив, дополнительный фильтр, который накладывается на получение сообщений темы (например, строго определенного автора).
  • PERMISSION_EXTERNAL - права доступа.
7.0.2

Возвращаемое значение

Номер страницы, на которой будет показано сообщение. Если сообщение не найдено, то возвращается значение false.

Смотрите также

Примеры использования

<?
if ($MID>0)
  $db_Message->NavStart($FORUM_MESSAGES_PER_PAGE, true, CForumMessage::GetMessagePage($MID, $FORUM_MESSAGES_PER_PAGE, $USER->GetUserGroupArray()));
else
  $db_Message->NavStart($FORUM_MESSAGES_PER_PAGE);
?>


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Роберт Басыров
Как сделать так чтобы, если у пользователя нет аватара, то загружалась определенная картинка с определенного места?

Можно сделать так: в компоненте forum.topic.read код
Код
if (is_array($res["AVATAR"]) && strLen($res["AVATAR"]["HTML"]) > 0): 
   ?><a href="<?=$res["profile_view"]?>" title="<?=GetMessage("F_AUTHOR_PROFILE")?>" class="forum-user avatar"><?=$res["AVATAR"]["HTML"]?></a><? 
endif;


заменить на:
Код
if (is_array($res["AVATAR"]) && strLen($res["AVATAR"]["HTML"]) > 0): 
   ?><a href="<?=$res["profile_view"]?>" title="<?=GetMessage("F_AUTHOR_PROFILE")?>" class="forum-user avatar"><?=$res["AVATAR"]["HTML"]?></a><? 
else: 
   ?><div class="forum-user avatar-is-absent"></div><? 
endif;


и, соответственно, описать стиль "avatar-is-absent" с указанием картинки.
© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх