• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/discount/preset/manager.php
  • Класс: BitrixSaleDiscountPresetManager
  • Вызов: Manager::autoLoad
public function autoLoad($className)
{
	$file = ltrim($className, "\");    // fix web env
	$file = strtr($file, Loader::ALPHA_UPPER, Loader::ALPHA_LOWER);

	$documentRoot = $documentRoot = rtrim($_SERVER["DOCUMENT_ROOT"], "/\");

	if(preg_match("#[^\\/a-zA-Z0-9_]#", $file))
	{
		return;
	}

	$file = str_replace('\', '/', $file);
	$fileParts = explode("/", $file);

	if($fileParts[0] !== "sale" || $fileParts[1] !== "handlers" || $fileParts[2] !== 'discountpreset')
	{
		return;
	}
	array_shift($fileParts);

	$filePath = $documentRoot . "/bitrix/modules/sale/" . implode("/", $fileParts) . ".php";

	if(file_exists($filePath))
	{
		require_once($filePath);
	}
}