• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/document/trackedobject.php
  • Класс: BitrixDiskDocumentTrackedObject
  • Вызов: TrackedObject::getMapReferenceAttributes
static function getMapReferenceAttributes()
{
	return [
		self::REF_USER => [
			'class' => User::class,
			'select' => User::getFieldsForSelect(),
			'load' => function(self $trackedObject){
				return User::loadById($trackedObject->getUserId());
			},
		],
		self::REF_OBJECT => [
			'class' => File::class,
			'load' => function(self $trackedObject){
				return BaseObject::loadById($trackedObject->getObjectId());
			},
		],
		self::REF_REAL_OBJECT => [
			'class' => File::class,
			'load' => function(self $trackedObject){
				if ($trackedObject->getRealObjectId() === $trackedObject->getFileId())
				{
					return $trackedObject->getFile();
				}

				return BaseObject::loadById($trackedObject->getObjectId());
			},
		],
		self::REF_ATTACHED_OBJECT => [
			'class' => AttachedObject::class,
			'load' => function(self $trackedObject){
				return AttachedObject::loadById($trackedObject->getAttachedObjectId());
			},
		],
	];
}