• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/page/asset.php
  • Класс: BitrixMainPageAsset
  • Вызов: Asset::isAssetChanged
private function isAssetChanged($assetList = [], $infoFile = '', $optimFile = '', $unique = false)
{
	$result = [
		'FILE' => [],
		'ACTION' => 'NO',
		'FILE_EXIST' => false,
		'FILES_INFO' => []
	];

	if (file_exists($infoFile) && file_exists($optimFile))
	{
		/** @noinspection PhpIncludeInspection */
		include($infoFile);

		/** @var array $filesInfo - information about files in set */
		$result['FILES_INFO'] = is_array($filesInfo) ? $filesInfo : [];
		$result['FILE_EXIST'] = true;
		if ($unique)
		{
			if (is_array($filesInfo))
			{
				foreach ($assetList as $asset)
				{
					if (isset($filesInfo[$asset['PATH']]))
					{
						if ($this->getAssetTime($asset['FULL_PATH']) != $filesInfo[$asset['PATH']])
						{
							$result = [
								'FILE' => $assetList,
								'ACTION' => 'NEW',
								'FILES_INFO' => []
							];
							break;
						}
					}
					else
					{
						$result['FILE'][] = $asset;
						$result['ACTION'] = 'UP';
					}
				}
			}
			else
			{
				$result = [
					'FILE' => $assetList,
					'ACTION' => 'NEW',
					'FILES_INFO' => []
				];
			}
		}
	}
	else
	{
		$result['FILE'] = $assetList;
		$result['ACTION'] = 'NEW';
	}

	return $result;
}