- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/classes/general/taskitem.php
- Класс: CTaskItem
- Вызов: CTaskItem::getData
public function getData($returnEscapedData = true, array $parameters = [], bool $bCheckPermissions = true)
{
// Preload data, if it isn't in cache
if ($this->arTaskData === null)
{
$this->markCacheAsDirty();
// Load task data
$defaultParams = [
'USER_ID' => $this->executiveUserId,
'returnAsArray' => true,
'bSkipExtraData' => false,
];
$arParams = array_merge($defaultParams, $parameters);
/** @noinspection PhpDeprecationInspection */
$arTask = CTasks::getById($this->taskId, $bCheckPermissions, $arParams);
if (!isset($arTask['ID']) || !is_array($arTask))
{
$this->throwExceptionNotAccessible();
}
$this->arTaskData = $arTask;
}
if ($returnEscapedData)
{
// Prepare escaped data on-demand
if ($this->arTaskDataEscaped === null)
{
foreach ($this->arTaskData as $field => $value)
{
$this->arTaskDataEscaped['~' . $field] = $value;
if ($field === 'DESCRIPTION')
{
$this->arTaskDataEscaped[$field] = $this->getDescription();
}
elseif (is_numeric($value) || (!is_string($value)))
{
$this->arTaskDataEscaped[$field] = $value;
}
else
{
$this->arTaskDataEscaped[$field] = htmlspecialcharsex($value);
}
}
}
$returnData = $this->arTaskDataEscaped;
}
else
{
$returnData = $this->arTaskData;
}
return $returnData;
}