- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/webform/options/integration.php
- Класс: Bitrix\Crm\WebForm\Options\Integration
- Вызов: Integration::toArray
public function toArray() : array
{
$cases = [];
foreach ($this->form->get()['INTEGRATION'] ?? [] as $link)
{
$case = [
'providerCode' => $link['ADS_TYPE'],
'date' => $link['DATE_INSERT'],
'form' => [
'id' => $link['ADS_FORM_ID'],
'name' => $link['ADS_FORM_NAME'],
],
'account' => [
'id' => $link['ADS_ACCOUNT_ID'],
'name' => $link['ADS_ACCOUNT_NAME'],
],
'linkDirection' => $link['LINK_DIRECTION'],
'fieldsMapping' => [],
];
if (AdsFormLinkTable::LINK_DIRECTION_IMPORT === (int)$link['LINK_DIRECTION'])
{
$case['fieldsMapping'] = array_map(
static function(array $raw) : array {
return [
'crmFieldKey' => $raw['CRM_FIELD_KEY'],
'adsFieldKey' => $raw['ADS_FIELD_KEY'],
'items' => $raw['ITEMS'],
];
},
$link['FIELDS_MAPPING']
);
}
$cases[] = $case;
}
return [
'cases' => $cases
];
}