...Человеческий поиск в разработке...
- Модуль: sender
- Путь к файлу: ~/bitrix/modules/sender/lib/integration/crm/preset/segment.php
- Класс: Bitrix\Sender\Integration\Crm\Preset\Segment
- Вызов: Segment::getSegments
private function getSegments() { $endpointsAll = array(); $list = array(); $connector = new Connectors\Lead; foreach (Connectors\Lead::getUiFilterPresets() as $code => $data) { if (empty($data['sender_segment_name'])) { continue; } $segmentCode = $code; if (!empty($data['sender_segment_business_case'])) { $segmentCode = "case_" . $segmentCode; } $fields = $data['fields']; $fields['BX_PRESET_ID'] = $code; $item = array( 'CODE' => $segmentCode, 'NAME' => $data['sender_segment_name'], 'SORT' => 100, 'ENDPOINTS' => array( array( 'MODULE_ID' => 'sender', 'CODE' => $connector->getCode(), 'FIELDS' => self::convertPresetFields($fields) ) ) ); $list[] = $item; if ($item['CODE'] === 'crm_lead_all') { $endpointsAll = array_merge($endpointsAll, $item['ENDPOINTS']); } } $connector = new Connectors\Client; foreach (Connectors\Client::getUiFilterPresets() as $code => $data) { if (empty($data['sender_segment_name'])) { continue; } $segmentCode = $code; if (!empty($data['sender_segment_business_case'])) { $segmentCode = "case_" . $segmentCode; } $fields = $data['fields']; $fields['BX_PRESET_ID'] = $code; $item = array( 'CODE' => $segmentCode, 'NAME' => $data['sender_segment_name'], 'SORT' => 100, 'ENDPOINTS' => array( array( 'MODULE_ID' => 'sender', 'CODE' => $connector->getCode(), 'FIELDS' => self::convertPresetFields($fields) ) ) ); $list[] = $item; if ($item['CODE'] === 'crm_client_all') { $endpointsAll = array_merge($endpointsAll, $item['ENDPOINTS']); } } if (count($endpointsAll) > 1) { $list[] = array( 'CODE' => Entity\Segment::CODE_ALL, 'NAME' => Loc::getMessage('SENDER_INTEGRATION_CRM_PRESET_SEGMENT_ALL'), 'SORT' => 50, 'ENDPOINTS' => $endpointsAll ); } return $list; }