- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/integration/forum/task/comment.php
- Класс: BitrixTasksIntegrationForumTaskComment
- Вызов: Comment::update
static function update($id, array $data, $taskId = false)
{
$result = new Result();
if(!static::includeModule())
{
$result->addError('NO_MODULE', 'No forum module installed');
return false;
}
// get task by comment id
if($taskId === false)
{
// todo
}
$taskId = intval($taskId);
CounterCounterService::getInstance()->collectData($taskId);
$feed = new ForumCommentsFeed(
static::getForumId(),
array(
"type" => 'TK',
"id" => $taskId,
"xml_id" => "TASK_".$taskId
)
);
// $feed->update() works with global-defined user fields
foreach ($data as $key => $value)
{
if (UtilUserField::isUFKey($key))
{
$GLOBALS[$key] = $value;
}
}
$updateResult = $feed->edit($id, $data);
if($updateResult)
{
$result->setData($updateResult);
}
else
{
$errors = $feed->getErrors();
if(is_array($errors))
{
foreach($errors as $error)
{
$result->getErrors()->add('ACTION_FAILED_REASON', $error->getMessage(), Error::TYPE_FATAL, array('CODE' => $error->getCode()));
}
}
}
return $result;
}