public function getArray()
{
$formData = $this->form->get();
$config = $this->config->toArray();
$dynamicCategory = $formData['FORM_SETTINGS']['DYNAMIC_CATEGORY'] ?? null;
$dynamicDcEnabled = ($formData['FORM_SETTINGS']['DYNAMIC_DC_ENABLED'] ?? 'N') === 'Y';
$refill = ($formData['FORM_SETTINGS']['REFILL']['ACTIVE'] ?? 'N') === 'Y';
return [
'data' => $config['data'],
'id' => $this->form->getId(),
'name' => $formData['NAME'],
'templateId' => $formData['TEMPLATE_ID'],
'presetFields' => $this->getPresetFields(),
'payment' => [
'use' => $formData['IS_PAY'] === 'Y',
'payer' => '',
'disabledSystems' => $this->convertPaySystemIds(
$formData['FORM_SETTINGS']['DISABLED_PAY_SYSTEMS'] ?? []
),
],
'captcha' => [
'key' => ReCaptcha::getKey(2),
'secret' => ReCaptcha::getSecret(2),
'hasDefaults' => ReCaptcha::getDefaultKey(2) && ReCaptcha::getDefaultSecret(2)
],
'document' => [
'scheme' => $formData['ENTITY_SCHEME'],
'duplicateMode' => $formData['DUPLICATE_MODE'],
'deal' => [
'category' => $formData['FORM_SETTINGS']['DEAL_CATEGORY'],
'duplicatesEnabled' => $formData['FORM_SETTINGS']['DEAL_DC_ENABLED'] === 'Y',
],
'dynamic' => [
'category' => $dynamicCategory === null ? null : (int)$dynamicCategory,
'duplicatesEnabled' => $dynamicDcEnabled,
],
],
'responsible' => [
'users' => $formData['ASSIGNED_BY_ID'],
'checkWorkTime' => $formData['ASSIGNED_WORK_TIME'] === 'Y',
'supportWorkTime' => ResponsibleQueue::isSupportedWorkTime(),
],
'agreements' => [
'use' => $formData['USE_LICENCE'] === 'Y',
],
'result' => [
'success' => [
'url' => $formData['RESULT_SUCCESS_URL'],
'text' => $formData['RESULT_SUCCESS_TEXT'],
],
'failure' => [
'url' => $formData['RESULT_FAILURE_URL'],
'text' => $formData['RESULT_FAILURE_TEXT'],
],
'redirectDelay' => $formData['FORM_SETTINGS']['REDIRECT_DELAY'],
'refill' => [
'caption' => $refill ? $formData['FORM_SETTINGS']['REFILL']['CAPTION'] : '',
'active' => $refill
]
],
'callback' => [
'use' => $formData['IS_CALLBACK_FORM'] === 'Y',
'from' => $formData['CALL_FROM'],
'text' => $formData['CALL_TEXT'],
],
'whatsapp' => [
'use' => $formData['IS_WHATSAPP_FORM'] === 'Y',
],
'analytics' => $this->getAnalytics(),
'integration' => $this->form->getIntegration()->toArray(),
'embedding' => $this->getEmbedding(),
];
}