• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_field_multi.php
  • Класс: \CCrmFieldMulti
  • Вызов: CCrmFieldMulti::CompareValuesFields
static function CompareValuesFields($fieldsOrig, &$fieldsModif)
{
	foreach ($fieldsModif as $multiTypeId=>$ar)
	{
		$result = array();
		$qty = 0;
		foreach ($ar as $id=>$value)
		{
			if(mb_substr($id, 0, 1) == 'n')
			{
				if(key_exists($multiTypeId, $fieldsOrig))
				{
					$list = $fieldsOrig[$multiTypeId];
					foreach ($list as $item)
					{
						if($item['VALUE_TYPE']==$value['VALUE_TYPE'] && $item['VALUE']==$value['VALUE'])
						{
							$ar[$item['ID']]=$value;
							unset($ar[$id]);
						}
					}
				}
			}
		}
		foreach (array_keys($ar) as $id)
		{
			$key = $id > 0 ? $id : 'n'.(++$qty);
			$result[$key] = $ar[$id];
		}
		$fieldsModif[$multiTypeId] = $result;
	}
}