• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/classes/general/tasklog.php
  • Класс: CTaskLog
  • Вызов: CTaskLog::getFilesChanges
static function getFilesChanges(array $currentFiles, array $newFiles): array
{
	$filesChanges = [];

	$deleted = array_diff($currentFiles, $newFiles);
	if (count($deleted) > 0)
	{
		$fileNames = [];
		$res = CFile::GetList([], ['@ID' => implode(',', $deleted)]);
		while ($file = $res->Fetch())
		{
			$fileNames[] = $file['ORIGINAL_NAME'];
		}
		if (count($fileNames))
		{
			$filesChanges['DELETED_FILES'] = [
				'FROM_VALUE' => implode(', ', $fileNames),
				'TO_VALUE' => false,
			];
		}
	}

	$added = array_diff($newFiles, $currentFiles);
	if (count($added) > 0)
	{
		$fileNames = [];
		$res = CFile::GetList([], ['@ID' => implode(',', $added)]);
		while ($file = $res->Fetch())
		{
			$fileNames[] = $file['ORIGINAL_NAME'];
		}
		if (count($fileNames))
		{
			$filesChanges['NEW_FILES'] = [
				'FROM_VALUE' => false,
				'TO_VALUE' => implode(', ', $fileNames)
			];
		}
	}

	return $filesChanges;
}