コード例 #1
0
function viewFormConfSpan($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf)
{
    $oPortsDetails = new PaloSantoHardwareDetection();
    $pconfEcho = new paloSantoConfEcho($pDB);
    $idSpan = str_replace('paramSPAN', '', getParameter('cardId'));
    $listaSpans = $oPortsDetails->leerSpanConfig($pDB, $idSpan);
    if (!is_array($listaSpans) || count($listaSpans) <= 0) {
        return NULL;
    }
    $response = array('spaninfo' => $listaSpans[$idSpan], 'card_id' => $idSpan);
    $arrPortsEcho = $pconfEcho->getEchoCancellerByIdCard($idSpan);
    $sMediaType = $response['spaninfo']['wanpipe_force_media'];
    if (is_null($sMediaType)) {
        $sMediaType = 'BRI';
        if (count($arrPortsEcho) == 23) {
            $sMediaType = 'T1';
        }
        if (count($arrPortsEcho) == 30) {
            $sMediaType = 'E1';
        }
    }
    switch ($sMediaType) {
        case 'T1':
            // Este es un puerto T1
            $response['framing_options'] = array('esf', 'd4');
            $response['coding_options'] = array('b8zs', 'ami');
            $response['crc_options'] = array();
            break;
        case 'E1':
            $response['framing_options'] = array('ccs', 'cas');
            $response['coding_options'] = array('hdb3', 'ami');
            $response['crc_options'] = array('crc4', 'ncrc4');
            break;
        default:
            // Este es un puerto BRI
            $response['framing_options'] = array('ccs');
            $response['coding_options'] = array('ami');
            $response['crc_options'] = array();
            break;
    }
    $jsonObject = new PaloSantoJSON();
    $jsonObject->set_message($response);
    return $jsonObject->createJSON();
}