• Модуль: dav
  • Путь к файлу: ~/bitrix/modules/dav/classes/general/exchangecontacts.php
  • Класс: CDavExchangeContacts
  • Вызов: CDavExchangeContacts::FormatFieldsArray
private function FormatFieldsArray($arFields)
{
	$arFieldsNew = array();

	$arMap = array(
		"NAME" => "GivenName",
		"LAST_NAME" => "Surname",
		"SECOND_NAME" => "MiddleName",
		"EMAIL" => "EmailAddresses",
		//"XML_ID" => "Id",
		"WORK_POSITION" => "JobTitle",
		"PERSONAL_ZIP" => "PhysicalAddresses_Home_PostalCode",
		"PERSONAL_STATE" => "PhysicalAddresses_Home_State",
		"PERSONAL_CITY" => "PhysicalAddresses_Home_City",
		"PERSONAL_STREET" => "PhysicalAddresses_Home_Street",
		"WORK_ZIP" => "PhysicalAddresses_Business_PostalCode",
		"WORK_STATE" => "PhysicalAddresses_Business_State",
		"WORK_CITY" => "PhysicalAddresses_Business_City",
		"WORK_STREET" => "PhysicalAddresses_Business_Street",
		"PERSONAL_PHONE" => "PhoneNumbers_HomePhone",
		"PERSONAL_FAX" => "PhoneNumbers_HomePhone2",
		"PERSONAL_MOBILE" => "PhoneNumbers_MobilePhone",
		"PERSONAL_PAGER" => "PhoneNumbers_Pager",
		"WORK_PHONE" => "PhoneNumbers_BusinessPhone",
		"WORK_FAX" => "PhoneNumbers_BusinessPhone2",
		"WORK_PAGER" => "PhoneNumbers_OtherTelephone",
		"WORK_COMPANY" => "CompanyName",
		"WORK_WWW" => "BusinessHomePage",
		"PERSONAL_ICQ" => "ImAddresses",
		"WORK_DEPARTMENT" => "Department",
	);

	foreach ($arFields as $key => $value)
	{
		if (array_key_exists($key, $arMap))
		{
			$arFieldsNew[$arMap[$key]] = $this->Decode($value);
		}
		else
		{
			switch ($key)
			{
				case "PERSONAL_COUNTRY":
					$arFieldsNew["PhysicalAddresses_Home_CountryOrRegion"] = $this->Decode(GetCountryByID($value));
					break;
				case "WORK_COUNTRY":
					$arFieldsNew["PhysicalAddresses_Business_CountryOrRegion"] = $this->Decode(GetCountryByID($value));
					break;
			}
		}
	}

	return $arFieldsNew;
}