- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/webform/embed/config.php
- Класс: Bitrix\Crm\WebForm\Embed\Config
- Вызов: Config::setDataFromArray
public function setDataFromArray(array $data)
{
$this->fieldsConfig->setData($data['fields'] ?? []);
$this->deps->setData($data['dependencies'] ?? []);
$parameters = [
'CAPTION' => $data['title'],
'DESCRIPTION' => $data['desc'],
'BUTTON_CAPTION' => $data['buttonCaption'],
'USE_CAPTCHA' => $data['recaptcha']['use'] ? 'Y' : 'N',
//'FIELDS' => [],
//'DEPENDENCIES' => [],
'AGREEMENTS' => array_map(
function ($agreement)
{
return [
'AGREEMENT_ID' => $agreement['id'],
'CHECKED' => $agreement['checked'] ? 'Y' : 'N',
'REQUIRED' => $agreement['required'] ? 'Y' : 'N',
];
},
self::filterAgreements($data['agreements'] ?? [])
),
'COPYRIGHT_REMOVED' => (!$data['useSign'] && WebForm\Form::canRemoveCopyright()) ? 'Y' : 'N',
'LANGUAGE_ID' => $data['language'],
];
$this->form->merge($parameters);
if (!empty($data['design']) && is_array($data['design']))
{
$this->form->setDesignOptions($data['design']);
}
return $this;
}