• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/paysystem/manager.php
  • Класс: BitrixSalePaySystemManager
  • Вызов: Manager::includeHandler
static function includeHandler($actionFile): array
{
	$className = '';
	$handlerType = '';

	if ($name = self::getFolderFromClassName($actionFile))
	{
		$documentRoot = Application::getDocumentRoot();
		foreach (self::getHandlerDirectories() as $type => $path)
		{
			if (File::isFileExists($documentRoot.$path.$name.'/handler.php'))
			{
				$className = self::getClassNameFromPath($actionFile);
				if (!class_exists($className))
					require_once($documentRoot.$path.$name.'/handler.php');

				if (class_exists($className))
				{
					$handlerType = $type;
					break;
				}

				$className = '';
			}
		}
	}

	if ($className === '')
	{
		if (self::isRestHandler($actionFile))
		{
			$className = 'BitrixSalePaySystemRestHandler';
			if (!class_exists($actionFile))
			{
				class_alias($className, $actionFile);
			}
		}
		else
		{
			$className = 'BitrixSalePaySystemCompatibilityHandler';
		}
	}

	return [
		$className,
		$handlerType,
	];
}