- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/webform/form.php
- Класс: Bitrix\Crm\WebForm\Form
- Вызов: Form::getDependencies
public function getDependencies($opposites = true)
{
$dependencyList = array();
foreach($this->params['DEPENDENCIES'] as $dependency)
{
$dependencyList[$dependency['DO_FIELD_CODE']][] = array(
'if' => array(
'fieldname' => $dependency['IF_FIELD_CODE'],
'action' => $dependency['IF_ACTION'],
'value' => $dependency['IF_VALUE'],
),
'do' => array(
'action' => $dependency['DO_ACTION'],
'value' => $dependency['DO_VALUE'],
),
);
if (!$opposites)
{
continue;
}
// add mirror dependency
if($dependency['IF_ACTION'] != 'change')
{
continue;
}
if(!in_array($dependency['DO_ACTION'], array('show', 'hide')))
{
continue;
}
$mirror = $dependency['DO_ACTION'] == 'hide' ? 'show' : 'hide';
$dependencyList[$dependency['DO_FIELD_CODE']][] = array(
'if' => array(
'fieldname' => $dependency['IF_FIELD_CODE'],
'action' => $dependency['IF_ACTION'],
'value' => $dependency['IF_VALUE'],
'operation' => '!='
),
'do' => array(
'action' => $mirror,
),
);
}
return $dependencyList;
}