• Модуль: conversion
  • Путь к файлу: ~/bitrix/modules/conversion/lib/internals/typemanager.php
  • Класс: BitrixConversionInternalsTypeManager
  • Вызов: TypeManager::getTypesInternal
public function getTypesInternal()
{
	if (! $types =& static::$types)
	{
		$event       = static::$event;
		$checkModule = static::$checkModule;

		foreach (EventManager::getInstance()->findEventHandlers('conversion', $event) as $handler)
		{
			$result = ExecuteModuleEventEx($handler);

			if (! is_array($result))
				throw new SystemException('Not array returned from: '.print_r($handler, true));

			foreach ($result as $name => $type)
			{
				if (! is_array($type))
					throw new SystemException('Not array in: '.$event.'()['.$name.'] => '.print_r($handler, true));

				if ($checkModule)
				{
					if (! $type['MODULE'])
						throw new SystemException('No [MODULE] in: '.$event.'()['.$name.'] => '.print_r($handler, true));
				}

				if ($types[$name])
					throw new SystemException('Duplicate in: '.$event.'()['.$name.'] => '.print_r($handler, true));

				$types[$name] = $type;
			}
		}
	}

	return $types;
}