function prepareParamsForBusVal($id, $fields) { if (!array_key_exists('PERSON_TYPE_ID', $fields)) { $personTypeList = CSalePaySystem::getPaySystemPersonTypeIds($id); if ($personTypeList) { $fields['PERSON_TYPE_ID'] = array_shift($personTypeList); } } $itemParams = unserialize($fields['PARAMS']); $result = array(); $result[] = array('CODE' => 'BX_PAY_SYSTEM_ID', 'CONSUMER' => 'PAYSYSTEM_' . $id, 'PERSON_TYPE_ID' => $fields['PERSON_TYPE_ID'] ?: null, 'MAP' => array('PROVIDER_KEY' => 'VALUE', 'PROVIDER_VALUE' => $id)); if ($itemParams) { foreach ($itemParams as $code => $param) { if ($param['TYPE'] == '') { $type = 'VALUE'; } elseif ($param['TYPE'] == 'FILE' || $param['TYPE'] == 'SELECT') { $type = 'INPUT'; } else { $type = $param['TYPE']; } $result[] = array('CODE' => $code, 'CONSUMER' => 'PAYSYSTEM_' . $id, 'PERSON_TYPE_ID' => $fields['PERSON_TYPE_ID'] ?: null, 'MAP' => array('PROVIDER_KEY' => $type, 'PROVIDER_VALUE' => $param['VALUE'])); } } return $result; }