ShowError(GetMessage('CRM_LEAD_VIEW_NOT_FOUND', array('#ID#' => $arParams['ENTITY_ID']))); return; } $arResult['PERMISSIONS'] = array('EDIT' => CCrmLead::CheckUpdatePermission($entityID, $userPerms) && $arFields['STATUS_ID'] !== 'CONVERTED', 'DELETE' => CCrmLead::CheckDeletePermission($entityID, $userPerms)); $arResult['STATUS_LIST'] = CCrmStatus::GetStatusList('STATUS'); $arResult['SOURCE_LIST'] = CCrmStatus::GetStatusList('SOURCE'); $arResult['CURRENCY_LIST'] = CCrmCurrencyHelper::PrepareListItems(); CCrmMobileHelper::PrepareLeadItem($arFields, $arParams, array('STATUS_LIST' => $arResult['STATUS_LIST'], 'SOURCE_LIST' => $arResult['SOURCE_LIST'])); $arFields['FM'] = array(); $dbMultiFields = CCrmFieldMulti::GetList(array('ID' => 'asc'), array('ENTITY_ID' => 'LEAD', 'ELEMENT_ID' => $entityID)); if ($dbMultiFields) { while ($multiFields = $dbMultiFields->Fetch()) { $arFields['FM'][$multiFields['TYPE_ID']][] = array('VALUE' => $multiFields['VALUE'], 'VALUE_TYPE' => $multiFields['VALUE_TYPE']); } } $arResult['CALLTO'] = CCrmMobileHelper::PrepareCalltoParams(array('COMMUNICATION_LIST_URL_TEMPLATE' => $arParams['COMMUNICATION_LIST_URL_TEMPLATE'], 'ENTITY_TYPE_ID' => CCrmOwnerType::Lead, 'ENTITY_ID' => $entityID, 'FM' => $arFields['FM'])); $arResult['MAILTO'] = CCrmMobileHelper::PrepareMailtoParams(array('COMMUNICATION_LIST_URL_TEMPLATE' => $arParams['COMMUNICATION_LIST_URL_TEMPLATE'], 'ENTITY_TYPE_ID' => CCrmOwnerType::Lead, 'ENTITY_ID' => $entityID, 'FM' => $arFields['FM'])); $arFields['PRODUCT_ROWS_QUANTITY'] = CAllCrmProductRow::GetRowQuantity(CCrmOwnerTypeAbbr::ResolveByTypeID(CCrmOwnerType::Lead), $entityID); $arFields['PRODUCT_ROWS_URL'] = $arParams['PRODUCT_ROW_LIST_URL_TEMPLATE'] !== '' ? CComponentEngine::MakePathFromTemplate($arParams['PRODUCT_ROW_LIST_URL_TEMPLATE'], array('entity_type_id' => CCrmOwnerType::Lead, 'entity_id' => $entityID)) : ''; $arFields['ACTITITY_QUANTITY'] = CAllCrmActivity::GetCount(array('BINDINGS' => array(array('OWNER_TYPE_ID' => CCrmOwnerType::Lead, 'OWNER_ID' => $entityID)))); $arFields['ACTIVITY_LIST_URL'] = $arParams['ACTIVITY_LIST_URL_TEMPLATE'] !== '' ? CComponentEngine::MakePathFromTemplate($arParams['ACTIVITY_LIST_URL_TEMPLATE'], array('entity_type_id' => CCrmOwnerType::Lead, 'entity_id' => $entityID)) : ''; $arFields['EVENT_LIST_URL'] = $arParams['EVENT_LIST_URL_TEMPLATE'] !== '' ? CComponentEngine::MakePathFromTemplate($arParams['EVENT_LIST_URL_TEMPLATE'], array('entity_type_id' => CCrmOwnerType::Lead, 'entity_id' => $entityID)) : ''; $arFields['EDIT_URL'] = $arParams['LEAD_EDIT_URL_TEMPLATE'] !== '' ? CComponentEngine::MakePathFromTemplate($arParams['LEAD_EDIT_URL_TEMPLATE'], array('lead_id' => $entityID)) : ''; $arFields['CALL_EDIT_URL'] = $arParams['ACTIVITY_EDIT_URL_TEMPLATE'] !== '' ? CComponentEngine::makePathFromTemplate($arParams['ACTIVITY_EDIT_URL_TEMPLATE'], array('owner_type' => CCrmOwnerType::LeadName, 'owner_id' => $entityID, 'type_id' => CCrmActivityType::Call)) : ''; $arFields['MEETING_EDIT_URL'] = $arParams['ACTIVITY_EDIT_URL_TEMPLATE'] !== '' ? CComponentEngine::makePathFromTemplate($arParams['ACTIVITY_EDIT_URL_TEMPLATE'], array('owner_type' => CCrmOwnerType::LeadName, 'owner_id' => $entityID, 'type_id' => CCrmActivityType::Meeting)) : ''; $arFields['EMAIL_EDIT_URL'] = $arParams['ACTIVITY_EDIT_URL_TEMPLATE'] !== '' ? CComponentEngine::makePathFromTemplate($arParams['ACTIVITY_EDIT_URL_TEMPLATE'], array('owner_type' => CCrmOwnerType::LeadName, 'owner_id' => $entityID, 'type_id' => CCrmActivityType::Email)) : ''; $arResult['LEAD_STATUS_SELECTOR_URL'] = CComponentEngine::makePathFromTemplate($arParams['LEAD_STATUS_SELECTOR_URL_TEMPLATE'], array('context_id' => '')); $arResult['LEAD_STATUS_SELECTOR_URL'] = CComponentEngine::makePathFromTemplate($arParams['LEAD_STATUS_SELECTOR_URL_TEMPLATE'], array('context_id' => '')); $arResult['ENTITY'] =& $arFields; unset($arFields); $this->IncludeComponentTemplate();
} elseif ($commOwnerTypeID === CCrmOwnerType::Lead) { $dbRes = CCrmLead::GetListEx(array(), array('=ID' => $commOwnerID), false, false, array('NAME', 'LAST_NAME', 'SECOND_NAME', 'POST')); $arLead = $dbRes ? $dbRes->Fetch() : null; if ($arLead) { $arFields['CLIENT_TITLE'] = CUser::FormatName($arParams['NAME_TEMPLATE'], array('LOGIN' => '', 'NAME' => isset($arLead['NAME']) ? $arLead['NAME'] : '', 'LAST_NAME' => isset($arLead['LAST_NAME']) ? $arLead['LAST_NAME'] : '', 'SECOND_NAME' => isset($arLead['SECOND_NAME']) ? $arLead['SECOND_NAME'] : ''), false, false); $arFields['CLIENT_SHOW_URL'] = CComponentEngine::MakePathFromTemplate($arParams['LEAD_SHOW_URL_TEMPLATE'], array('lead_id' => $commOwnerID)); $arFields['CLIENT_IMAGE_URL'] = SITE_DIR . 'bitrix/templates/mobile_app/images/crm/no_lead_big.png?ver=1'; $arFields['CLIENT_LEGEND'] = isset($arLead['POST']) ? $arLead['POST'] : ''; $arMultiFields = array(); $dbMultiFields = CCrmFieldMulti::GetList(array('ID' => 'asc'), array('ENTITY_ID' => 'LEAD', 'ELEMENT_ID' => $commOwnerID)); if ($dbMultiFields) { while ($multiFields = $dbMultiFields->Fetch()) { $arMultiFields[$multiFields['TYPE_ID']][] = array('VALUE' => $multiFields['VALUE'], 'VALUE_TYPE' => $multiFields['VALUE_TYPE']); } } $arFields['CLIENT_CALLTO'] = CCrmMobileHelper::PrepareCalltoParams(array('COMMUNICATION_LIST_URL_TEMPLATE' => $arParams['COMMUNICATION_LIST_URL_TEMPLATE'], 'ENTITY_TYPE_ID' => CCrmOwnerType::Lead, 'ENTITY_ID' => $commOwnerID, 'FM' => $arMultiFields)); $arFields['CLIENT_MAILTO'] = CCrmMobileHelper::PrepareMailtoParams(array('COMMUNICATION_LIST_URL_TEMPLATE' => $arParams['COMMUNICATION_LIST_URL_TEMPLATE'], 'ENTITY_TYPE_ID' => CCrmOwnerType::Lead, 'ENTITY_ID' => $commOwnerID, 'FM' => $arMultiFields)); } } } $storageTypeID = $arFields['STORAGE_TYPE_ID']; $arFields['FILES'] = array(); $arFields['WEBDAV_ELEMENTS'] = array(); CCrmActivity::PrepareStorageElementIDs($arFields); CCrmActivity::PrepareStorageElementInfo($arFields); $arFields['EDIT_URL'] = $arParams['ACTIVITY_EDIT_URL_TEMPLATE'] !== '' ? CComponentEngine::makePathFromTemplate($arParams['ACTIVITY_EDIT_URL_TEMPLATE'], array('activity_id' => $entityID)) : ''; $arResult['ENTITY'] =& $arFields; unset($arFields); $sid = bitrix_sessid(); $arResult['SERVICE_URL'] = CComponentEngine::makePathFromTemplate('#SITE_DIR#bitrix/components/bitrix/mobile.crm.activity.edit/ajax.php?site_id=#SITE#&sessid=#SID#', array('SID' => $sid)); $this->IncludeComponentTemplate();