3namespace Bitrix\Im\V2\Link\Favorite;
5use Bitrix\Im\Model\EO_LinkFavorite;
6use Bitrix\Im\Model\LinkFavoriteTable;
7use Bitrix\Im\V2\Common\ContextCustomer;
8use Bitrix\Im\V2\Link\BaseLinkItem;
9use Bitrix\Im\V2\Link\Reminder\ReminderPopupItem;
10use Bitrix\Im\V2\Message;
11use Bitrix\Im\V2\Entity;
12use Bitrix\Im\V2\Rest\PopupData;
13use Bitrix\Im\V2\Service\Context;
14use Bitrix\Main\NotImplementedException;
25 $this->initByDefault();
35 return LinkFavoriteTable::class;
45 return Message::class;
55 $favoriteMessage =
new static(
$entity);
57 if (
$entity->getMessage() !==
null)
62 return $favoriteMessage;
67 $favoriteMessage =
new static();
68 $favoriteMessage->setContext(
$context);
72 ->setAuthorId($favoriteMessage->getContext()->getUserId())
76 return $favoriteMessage;
81 if (
$message->getMessageId() ===
null)
86 $entity = LinkFavoriteTable::query()
87 ->setSelect([
'CHAT_ID',
'AUTHOR_ID',
'DATE_CREATE',
'MESSAGE_ID'])
88 ->where(
'MESSAGE_ID',
$message->getMessageId())
129 'message' => $this->
getEntity()->toRestFormat(),
146 return $data->merge(parent::getPopupData($excludedList));
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
setEntityId(?int $entityId)
setEntity(RestEntity $entity)
static getRestEntityName()
static getEntityClassName()
toRestFormat(array $option=[])
setMessageId(?int $messageId)
setMessageInfo(Message $message)
getPopupData(array $excludedList=[])
__construct($source=null)
static linkEntityToMessage(Entity $entity, Message $message)
static initByEntity(EO_LinkFavorite $entity)
static createFromMessage(Message $message, ?Context $context=null)
static getEntityIdFieldName()
static getByMessageAndUserId(Message $message, int $userId)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)