• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Message/Params.php
  • Класс: BitrixImV2MessageParams
  • Вызов: Params::initByEntitiesCollection
protected function initByEntitiesCollection(ORMObjectifyCollection $entitiesCollection): Result
{
	/** @var EO_MessageParam $entity */
	foreach ($entitiesCollection as $entity)
	{
		$paramName = $entity->getParamName();
		if (!parent::offsetExists($paramName))
		{
			$this[$paramName] = self::create($paramName);
		}

		$item = $this[$paramName];
		if ($item instanceof ParamArray)
		{
			$type = self::getType($paramName);
			if (isset($type['classItem']))
			{
				$classItem = $type['classItem'];
				$item->add(new $classItem($entity));
			}
			else
			{
				$item->add(new Param($entity));
			}
		}
		else
		{
			$item->load($entity);
		}
	}

	$this->isLoaded = true;

	return new Result();
}