• Модуль: intranet
  • Путь к файлу: ~/bitrix/modules/intranet/classes/general/cml2.php
  • Класс: CUserCMLImport
  • Вызов: CUserCMLImport::CheckUserFields
function CheckUserFields()
{
	$dbRes = CUserTypeEntity::GetList(
		array(),
		array(
			'ENTITY_ID' => 'USER'
		)
	);

	$arUserTypeList = array('UF_DEPARTMENT' => 0, 'UF_1C' => 0, 'UF_INN' => 0, 'UF_PHONE_INNER' => 0, 'UF_DISTRICT' => 0, 'UF_STATE_FIRST' => 0, 'UF_STATE_LAST' => 0);

	while ($arRes = $dbRes->Fetch())
	{
		unset($arUserTypeList[$arRes['FIELD_NAME']]);
	}

	if (count($arUserTypeList) > 0)
	{
		$ob = new CUserTypeEntity();

		$arUserFields = array();
		require($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/intranet/install/1c_intranet/user.php');

		foreach ($arUserTypeList as $key => $zero)
		{
			if ($arUserFields[$key])
			{
				if ($key == 'UF_DEPARTMENT')
					$arUserFields[$key]['SETTINGS']['IBLOCK_ID'] = $this->DEPARTMENTS_IBLOCK_ID;

				$FIELD_ID = $ob->Add($arUserFields[$key]);

				if ($FIELD_ID <= 0)
				{
					return false;
				}
			}
		}
	}

	return true;
}