- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/integration/socialnetwork/task.php
- Класс: BitrixTasksIntegrationSocialnetworkis
- Вызов: is::getSonetLogByTaskId
static function getSonetLogByTaskId($taskId)
{
static $cache = array();
$result = array();
$taskId = intval($taskId);
if(!static::includeModule() || $taskId <= 0)
{
return $result;
}
if (isset($cache[$taskId]))
{
return $cache[$taskId];
}
else
{
$res = CSocNetLog::getList(
array(),
array('EVENT_ID' => 'tasks', 'SOURCE_ID' => $taskId),
false,
false,
array('ID')
);
if ($item = $res->fetch())
{
$result = $item;
}
if (
empty($result)
&& Loader::includeModule('crm')
)
{
$res = CCrmActivity::getList(
array(),
array(
'TYPE_ID' => CCrmActivityType::Task,
'ASSOCIATED_ENTITY_ID' => $taskId,
'CHECK_PERMISSIONS' => 'N'
),
false,
false,
array('ID')
);
if ($crmActivity = $res->fetch())
{
$res = CSocNetLog::getList(
array(),
array('EVENT_ID' => 'crm_activity_add', 'ENTITY_ID' => $crmActivity['ID']),
false,
false,
array('ID')
);
if ($item = $res->fetch())
{
$result = $item;
}
}
}
$cache[$taskId] = $result;
return $result;
}
}