- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/integration/documentgenerator/dataprovider/crmentitydataprovider.php
- Класс: Bitrix\Crm\Integration\DocumentGenerator\DataProvider\CrmEntityDataProvider
- Вызов: CrmEntityDataProvider::onDocumentUpdate
public function onDocumentUpdate(Document $document)
{
Loc::loadLanguageFile(__FILE__);
$timelineIdentifier = $this->getTimelineItemIdentifier();
$entityTypeId = $timelineIdentifier ? $timelineIdentifier->getEntityTypeId() : $this->getCrmOwnerType();
$entityId = $timelineIdentifier ? $timelineIdentifier->getEntityId() : $this->source;
$entries = DocumentEntry::getListByDocumentId($document->ID);
foreach($entries as $entry)
{
if($entry['TYPE_CATEGORY_ID'] === TimelineType::MODIFICATION)
{
$text = Loc::getMessage('CRM_DOCGEN_CRMENTITYDATAPROVIDER_PULIC_LINK_VIEWED', ['#TITLE#' => htmlspecialcharsbx($document->getTitle())]);
}
else
{
$text = Loc::getMessage('CRM_DOCGEN_CRMENTITYDATAPROVIDER_COMMENT', ['#TITLE#' => htmlspecialcharsbx($document->getTitle())]);
}
if($entry['COMMENT'] != $text)
{
$entry['COMMENT'] = $text;
DocumentEntry::update($entry['ID'], $entry);
}
$saveData = array(
'TITLE' => $document->getTitle(),
'ENTITY_TYPE_ID' => $entityTypeId,
'ENTITY_ID' => $entityId,
'USER_ID' => $this->getDocumentUserId($document),
'DOCUMENT_ID' => $document->ID,
);
DocumentController::getInstance()->onUpdate($entry['ID'], $saveData);
}
}