- Модуль: abtest
- Путь к файлу: ~/bitrix/modules/abtest/lib/eventhandler.php
- Класс: BitrixABTestEventHandler
- Вызов: EventHandler::onGetAttributeTypes
static function onGetAttributeTypes()
{
$sections = array(
'A' => array('NAME' => LocalizationLoc::getMessage('ABTEST_CONV_TEST_SECTION_A_NAME')),
'B' => array('NAME' => LocalizationLoc::getMessage('ABTEST_CONV_TEST_SECTION_B_NAME'))
);
return array(
'abtest' => array(
'MODULE' => 'abtest',
'NAME' => LocalizationLoc::getMessage('ABTEST_CONVATTR_TEST_NAME'),
'SORT' => 5000,
'GET_VALUES' => function(array $ids)
{
$result = ABTestTable::getList(array(
'select' => array('ID', 'NAME'),
'filter' => array('ID' => $ids),
'order' => array('SORT' => 'ASC'),
));
$values = array();
while ($abtest = $result->fetch())
{
if (empty($abtest['NAME']))
$abtest['NAME'] = str_replace('#ID#', $abtest['ID'], LocalizationLoc::getMessage('ABTEST_CONV_TEST_TITLE'));
$values[$abtest['ID']] = array(
'NAME' => $abtest['NAME']
);
}
return $values;
}
),
'abtest_section' => array(
'MODULE' => 'abtest',
'NAME' => LocalizationLoc::getMessage('ABTEST_CONVATTR_TEST_SECTION_NAME'),
'SORT' => 5100,
'GET_VALUES' => function(array $ids) use ($sections)
{
$values = array();
foreach ($ids as $id)
{
if (!empty($sections[$id]))
$values[$id] = $sections[$id];
}
return $values;
}
),
);
}