• Модуль: dav
  • Путь к файлу: ~/bitrix/modules/dav/classes/general/exchangeclient.php
  • Класс: CDavExchangeClient
  • Вызов: CDavExchangeClient::FormatStandartFieldsArray
protected function FormatStandartFieldsArray($key, $value, &$arFields)
{
	$bProcessed = false;

	switch ($key)
	{
		case "BodyType":
			$bProcessed = true;
			$arFields[$key] = (mb_strtolower($value) === "html" ? "HTML" : "Text");
			break;

		case "Importance":
			$bProcessed = true;
			$ar = array("low" => "Low", "normal" => "Normal", "high" => "High");

			$value = mb_strtolower($value);
			if (array_key_exists($value, $ar))
			{
				$arFields[$key] = $ar[$value];
			}
			else
			{
				$this->arError[] = ["WrongImportance", "Available values for Importance are Low, Normal, High"];
			}
			break;

		case "LegacyFreeBusyType":
			$bProcessed = true;
			$ar = array("free" => "Free", "tentative" => "Tentative", "busy" => "Busy", "oof" => "OOF", "nodata" => "NoData");

			$value = mb_strtolower($value);
			if (array_key_exists($value, $ar))
			{
				$arFields[$key] = $ar[$value];
			}
			else
			{
				$this->arError[] = [
					"WrongLegacyFreeBusyType",
					"Available values for LegacyFreeBusyType are Free, Tentative, Busy, OOF, NoData"
				];
			}
			break;

		case "Sensitivity":
			$bProcessed = true;
			$ar = array("normal" => "Normal", "personal" => "Personal", "private" => "Private", "confidential" => "Confidential");

			$value = mb_strtolower($value);
			if (array_key_exists($value, $ar))
			{
				$arFields[$key] = $ar[$value];
			}
			else
			{
				$this->arError[] = [
					"WrongSensitivity",
					"Available values for Sensitivity are Normal, Personal, Private, Confidential"
				];
			}
			break;

		case "Status":
			$bProcessed = true;
			$ar = array("notstarted" => "NotStarted", "inprogress" => "InProgress", "completed" => "Completed", "waitingonothers" => "WaitingOnOthers", "deferred" => "Deferred");

			$value = mb_strtolower($value);
			if (array_key_exists($value, $ar))
			{
				$arFields[$key] = $ar[$value];
			}
			else
			{
				$this->arError[] = [
					"WrongStatus",
					"Available values for Status are NotStarted, InProgress, Completed, WaitingOnOthers, Deferred"
				];
			}
			break;
	}

	return $bProcessed;
}