• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/search/indexmanager.php
  • Класс: BitrixDiskSearchIndexManager
  • Вызов: IndexManager::saveExtendedFullTextByContent
protected function saveExtendedFullTextByContent(BaseObject $object, $content = null)
{
	$textBuilder = $this->getTextBuilder($object);

	if ($object instanceof Folder)
	{
		ObjectExtendedIndexTable::upsert(
			$object->getId(),
			$textBuilder->getSearchValue(),
			ObjectExtendedIndexTable::STATUS_EXTENDED
		);

		return;
	}

	$status = $content ? ObjectExtendedIndexTable::STATUS_EXTENDED : ObjectExtendedIndexTable::STATUS_SHORT;
	if ($status === ObjectExtendedIndexTable::STATUS_EXTENDED)
	{
		//try to update by short version of search index
		ObjectExtendedIndexTable::upsert(
			$object->getId(),
			$textBuilder->getSearchValue(),
			ObjectExtendedIndexTable::STATUS_EXTENDED
		);
	}

	if (is_callable($content))
	{
		$content = $content();
	}

	ObjectExtendedIndexTable::upsert(
		$object->getId(),
		$textBuilder->addText($content)->getSearchValue(),
		$status
	);
}