- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/paysystem/manager.php
- Класс: BitrixSalePaySystemManager
- Вызов: Manager::getHandlerDescription
static function getHandlerDescription($handler, $psMode = null)
{
$service = new Service(array('ACTION_FILE' => $handler, 'PS_MODE' => $psMode));
$data = $service->getHandlerDescription();
$eventParams = array('handler' => $handler);
$event = new Event('sale', self::EVENT_ON_GET_HANDLER_DESC, $eventParams);
$event->send();
foreach ($event->getResults() as $eventResult)
{
if ($eventResult->getType() !== EventResult::ERROR)
{
$codes = $eventResult->getParameters();
if ($codes && is_array($codes))
{
if (!isset($data['CODES']) || !is_array($data['CODES']))
{
$data['CODES'] = [];
}
$data['CODES'] = array_merge($data['CODES'], $codes);
}
}
}
if (isset($data['CODES']) && is_array($data['CODES']))
{
uasort(
$data['CODES'],
function ($a, $b)
{
$sortA = $a['SORT'] ?? 0;
$sortB = $b['SORT'] ?? 0;
return ($sortA < $sortB) ? -1 : 1;
}
);
}
return $data;
}