• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/location/name/nameentity.php
  • Класс: BitrixSaleLocationNameNameEntity
  • Вызов: NameEntity::addMultipleForOwner
static function addMultipleForOwner($primaryOwner, $names = array())
{
	$primaryOwner = Assert::expectIntegerPositive($primaryOwner, '$primaryOwner');

	// nothing to connect to, simply exit
	if(!is_array($names) || empty($names))
		return;

	$langField = static::getLanguageFieldName();
	$refField = static::getReferenceFieldName();

	foreach($names as $lid => $name)
	{
		$lid = Assert::castTrimLC($lid);

		$empty = true;
		foreach($name as $arg)
		{
			if($arg <> '')
			{
				$empty = false;
				break;
			}
		}

		if(!$empty)
		{
			$res = static::add(array_merge(
				array(
					$langField => $lid,
					$refField => $primaryOwner
				),
				$name
			));

			if(!$res->isSuccess())
			{
				throw new MainSystemException(
					Loc::getMessage('SALE_LOCATION_NAME_NAME_ENTITY_CANNOT_ADD_NAMES_EXCEPTION').
					' ('.
					implode(
						',',
						$res->getErrorMessages()).
					')'
				);
			}
		}
	}

	$GLOBALS['CACHE_MANAGER']->ClearByTag('sale-location-data');
}