3namespace Bitrix\Im\V2\Chat;
5use Bitrix\Im\V2\Entity\User\User;
6use Bitrix\Im\V2\Relation\DeleteUserConfig;
7use Bitrix\Im\V2\Result;
15 return self::IM_TYPE_OPEN;
22 return parent::checkAccessInternal(
$userId);
36 $relations = $this->getRelationsByUserIds($userIds);
40 $relation = $relations->getByUserId(
$userId, $this->getChatId());
43 || $relation->getNotifyBlock())
56 $accessCodes = parent::getAccessCodesForDiskFolder();
61 $driver = \Bitrix\Disk\Driver::getInstance();
62 $rightsManager = $driver->getRightsManager();
64 'ACCESS_CODE' => $departmentCode,
65 'TASK_ID' => $rightsManager->getTaskIdByName($rightsManager::TASK_READ)
74 if (Loader::includeModule(
'pull'))
76 \CPullWatch::Add($this->getContext()->getUserId(),
"IM_PUBLIC_{$this->getId()}",
true);
87 parent::updateStateAfterRelationsAdd($usersToAdd);
89 if (Loader::includeModule(
'pull'))
91 foreach ($usersToAdd as
$userId)
93 \CPullWatch::Delete(
$userId,
'IM_PUBLIC_' . $this->getId());
104 parent::updateStateAfterUserDelete($deletedUserId,
$config);
117 CIMContactList::CleanAllChatCache();
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
checkAccessInternal(int $userId)
getRecentSectionsForGuest()
clearLegacyCache(int $userId)
updateStateAfterRelationsAdd(array $usersToAdd)
needToSendMessageUserDelete()
getAccessCodesForDiskFolder()
updateStateAfterUserDelete(int $deletedUserId, DeleteUserConfig $config)
filterUsersToMention(array $userIds)
static GetTopDepartmentCode()
static GetNotifyAccess($userId, $moduleId, $eventId, $clientId)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)