• Модуль: dav
  • Путь к файлу: ~/bitrix/modules/dav/classes/general/exchangecontacts.php
  • Класс: CDavExchangeContacts
  • Вызов: CDavExchangeContacts::InitUserEntity
static function InitUserEntity()
{
	if (!CModule::IncludeModule("intranet"))
		return;

	$arRequiredFields = array(
		"UF_BXDAVEX_CNTSYNC" => array(
			"USER_TYPE_ID" => "datetime",
			"SORT" => 100,
			"EDIT_FORM_LABEL_DEFAULT_MESSAGE" => "Contacts sync date",
		)
	);

	$arUserCustomFields = $GLOBALS["USER_FIELD_MANAGER"]->GetUserFields("USER");
	foreach ($arUserCustomFields as $key => $value)
	{
		if (array_key_exists($key, $arRequiredFields))
			unset($arRequiredFields[$key]);
	}

	foreach ($arRequiredFields as $requiredFieldKey => $requiredFieldValue)
	{
		$arFields = array(
			"ENTITY_ID" => "USER",
			"FIELD_NAME" => $requiredFieldKey,
			"SHOW_IN_LIST" => "N",
			"IS_SEARCHABLE" => "N",
			"SHOW_FILTER" => "N",
			"EDIT_IN_LIST" => "N",
			"EDIT_FORM_LABEL" => CDavExchangeClient::InitUserEntityLoadMessages($requiredFieldKey, $requiredFieldValue["EDIT_FORM_LABEL_DEFAULT_MESSAGE"]),
		);
		$obUserField = new CUserTypeEntity;
		$obUserField->Add(array_merge($arFields, $requiredFieldValue));
	}
}