CCrmOwnerType::TryGetInfo

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. CCrmOwnerType
  4. TryGetInfo
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_owner_type.php
  • Класс: \CCrmOwnerType
  • Вызов: CCrmOwnerType::TryGetInfo
static function TryGetInfo($typeID, $ID, &$info, $bCheckPermissions = false)
{
	$typeID = intval($typeID);
	$ID = intval($ID);

	if($ID <= 0)
	{
		return array();
	}

	$result = null;
	switch($typeID)
	{
		case self::Lead:
		{
			$dbRes = CCrmLead::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => ($bCheckPermissions ? 'Y' : 'N')), false, false, array('TITLE'));
			$arRes = $dbRes ? $dbRes->Fetch() : null;
			if(is_array($arRes))
			{
				$info = array(
					'CAPTION' => isset($arRes['TITLE']) ? $arRes['TITLE'] : '',
					'IMAGE_ID' => 0
				);
				return true;
			}
			break;
		}
		case self::Contact:
		{
			$dbRes = CCrmContact::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => ($bCheckPermissions ? 'Y' : 'N')), false, false, array('HONORIFIC', 'NAME', 'SECOND_NAME', 'LAST_NAME', 'PHOTO'));
			$arRes = $dbRes ? $dbRes->Fetch() : null;
			if(is_array($arRes))
			{
				$info = array(
					'CAPTION' => CCrmContact::PrepareFormattedName($arRes),
					'IMAGE_ID' => isset($arRes['PHOTO']) ? intval($arRes['PHOTO']) : 0
				);
				return true;
			}
			break;
		}
		case self::Company:
		{
			$dbRes = CCrmCompany::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => ($bCheckPermissions ? 'Y' : 'N')), false, false, array('TITLE', 'LOGO'));
			$arRes = $dbRes ? $dbRes->Fetch() : null;
			if(is_array($arRes))
			{
				$info = array(
					'CAPTION' => isset($arRes['TITLE']) ? $arRes['TITLE'] : '',
					'IMAGE_ID' => isset($arRes['LOGO']) ? intval($arRes['LOGO']) : 0
				);
				return true;
			}
			break;
		}
		case self::Deal:
		{
			$dbRes = CCrmDeal::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => ($bCheckPermissions ? 'Y' : 'N')), false, false, array('TITLE'));
			$arRes = $dbRes ? $dbRes->Fetch() : null;
			if(is_array($arRes))
			{
				$info = array(
					'CAPTION' => isset($arRes['TITLE']) ? $arRes['TITLE'] : '',
					'IMAGE_ID' => 0
				);
				return true;
			}
			break;
		}
		case self::Invoice:
		{
			$dbRes = CCrmInvoice::GetList(array(), array('ID' => $ID), false, false, array('ORDER_TOPIC'));
			$arRes = $dbRes ? $dbRes->Fetch() : null;
			if(is_array($arRes))
			{
				$info = array(
					'CAPTION' => isset($arRes['ORDER_TOPIC']) ? $arRes['ORDER_TOPIC'] : '',
					'IMAGE_ID' => 0
				);
				return true;
			}
			break;
		}
		case self::Quote:
		{
			$dbRes = CCrmQuote::GetList(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => ($bCheckPermissions ? 'Y' : 'N')), false, false, array('TITLE'));
			$arRes = $dbRes ? $dbRes->Fetch() : null;
			if(is_array($arRes))
			{
				$info = array(
					'CAPTION' => isset($arRes['TITLE']) ? $arRes['TITLE'] : '',
					'IMAGE_ID' => 0
				);
				return true;
			}
			break;
		}
		case self::Order:
		{
			$caption = self::GetCaption($typeID, $ID);
			if (!empty($caption))
			{
				$info = array(
					'CAPTION' => $caption,
					'IMAGE_ID' => 0
				);
				return true;
			}
			break;
		}
		case self::StoreDocument:
		case self::ShipmentDocument:
		{
			$caption = self::GetCaption($typeID, $ID);
			if (!empty($caption))
			{
				$info = [
					'CAPTION' => $caption,
					'IMAGE_ID' => 0,
				];
				return true;
			}
			break;
		}
	}

	if (static::isUseDynamicTypeBasedApproach($typeID))
	{
		$caption = static::GetCaption($typeID, $ID);
		if (!empty($caption))
		{
			$info = [
				'CAPTION' => $caption,
				'IMAGE_ID' => 0,
			];
			return true;
		}
	}

	return false;
}

Добавить комментарий