- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/volume/module/socialnetwork.php
- Класс: BitrixDiskVolumeModuleSocialnetwork
- Вызов: Socialnetwork::getEntityList
public function getEntityList(): array
{
static $entityList;
if (!isset($entityList))
{
$entityList = [];
$filter = [
'=ENTITY_ID' => [
BitrixSocialnetworkLivefeedProvider::DATA_ENTITY_TYPE_BLOG_POST, //'BLOG_POST',
BitrixSocialnetworkLivefeedProvider::DATA_ENTITY_TYPE_BLOG_COMMENT, //'BLOG_COMMENT',
BitrixSocialnetworkLivefeedLogEvent::PROVIDER_ID, //'SONET_LOG',
BitrixSocialnetworkLivefeedLogComment::PROVIDER_ID, //'SONET_COMMENT',
'FORUM_MESSAGE',
],
'=USER_TYPE_ID' => [
CUserTypeFile::USER_TYPE_ID,
DiskUfFileUserType::USER_TYPE_ID,
DiskUfVersionUserType::USER_TYPE_ID,
],
];
$userFieldList = BitrixMainUserFieldTable::getList(['filter' => $filter]);
if ($userFieldList->getSelectedRowsCount() > 0)
{
foreach ($userFieldList as $userField)
{
$entityName = $userField['ENTITY_ID'];
if (isset($entityList[$entityName]))
{
continue;
}
/** @var BitrixMainEntityBase $ent */
$ent = BitrixMainEntityBase::compileEntity($entityName, [], [
'namespace' => __NAMESPACE__,
'uf_id' => $entityName,
]);
$entityList[$entityName] = $ent->getDataClass();
}
}
}
return $entityList;
}