• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/location/import/import.php
  • Класс: BitrixSaleLocationImportImportProcess
  • Вызов: ImportProcess::__construct
public function __construct($options)
{
	if($options['ONLY_DELETE_ALL'])
	{
		$this->addStage(array(
			'PERCENT' => 100,
			'CODE' => 'DELETE_ALL',
			'CALLBACK' => 'stageDeleteAll',
			'SUBPERCENT_CALLBACK' => 'getSubpercentForstageDeleteAll'
		));
	}
	else
	{
		$this->addStage(array(
			'PERCENT' => 5,
			'CODE' => 'DOWNLOAD_FILES',
			'CALLBACK' => 'stageDownloadFiles',
			'SUBPERCENT_CALLBACK' => 'getSubpercentForStageDownloadFiles'
		));

		if($_REQUEST['OPTIONS']['DROP_ALL'])
		{
			$this->addStage(array(
				'PERCENT' => 7,
				'CODE' => 'DELETE_ALL',
				'CALLBACK' => 'stageDeleteAll',
				'SUBPERCENT_CALLBACK' => 'getSubpercentForstageDeleteAll'
			));
		}

		$this->addStage(array(
			'PERCENT' => 10,
			'CODE' => 'DROP_INDEXES',
			'CALLBACK' => 'stageDropIndexes',
			'SUBPERCENT_CALLBACK' => 'getSubpercentForStageDropIndexes'
		));

		$this->addStage(array(
			'PERCENT' => 60,
			'STEP_SIZE' => 6000,
			'CODE' => 'PROCESS_FILES',
			'CALLBACK' => 'stageProcessFiles',
			'SUBPERCENT_CALLBACK' => 'getSubpercentForStageProcessFiles'
		));

		if($_REQUEST['OPTIONS']['INTEGRITY_PRESERVE'])
		{
			$this->addStage(array(
				'PERCENT' => 65,
				'STEP_SIZE' => 1,
				'CODE' => 'INTEGRITY_PRESERVE',
				'CALLBACK' => 'stageIntegrityPreserve'
			));
		}

		$this->addStage(array(
			'PERCENT' => 90,
			'STEP_SIZE' => 1,
			'CODE' => 'REBALANCE_WALK_TREE',
			'CALLBACK' => 'stageRebalanceWalkTree',
			'SUBPERCENT_CALLBACK' => 'getSubpercentForStageRebalanceWalkTree'
		));

		$this->addStage(array(
			'PERCENT' => 95,
			'STEP_SIZE' => 1,
			'CODE' => 'REBALANCE_CLEANUP_TEMP_TABLE',
			'CALLBACK' => 'stageRebalanceCleanupTempTable'
		));

		$this->addStage(array(
			'PERCENT' => 100,
			'STEP_SIZE' => 1,
			'CODE' => 'RESTORE_INDEXES',
			'CALLBACK' => 'stageRestoreIndexes',
			'SUBPERCENT_CALLBACK' => 'getSubpercentForStageRestoreIndexes'
		));
	}

	$this->dbConnection = MainHttpApplication::getConnection();
	$this->dbConnType = $this->dbConnection->getType();
	$this->dbHelper = $this->dbConnection->getSqlHelper();

	parent::__construct($options);
}