pTg[$i]=$pTg[$i]";
$wTg = $wTg." AND level_$lNum = $pTg[$i] ";
$i++;
}
/************get default value**************/
$defSql = " SELECT initValue FROM paramConf WHERE keyId > 0 ".$wTg;
$defRes = @mysqli_query($pubConn,$defSql);
$defRow = @mysqli_fetch_array($defRes);
$defaultValue = $defRow[initValue];
//echo "
defaultValue=$defaultValue";
$tgFlagArr=array(
array('num' => '0', 'remark' => 'N', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Y', 'color' => '#0000FF')
);
$mptyFlagArr=array(
array('num' => '0', 'remark' => 'N', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Y', 'color' => '#0000FF')
);
$tandemFlagArr=array(
array('num' => '0', 'remark' => 'N', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Y', 'color' => '#0000FF')
);
$incomingCallTypeArr=array(
array('num' => '0', 'remark' => 'Normal', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'In', 'color' => '#0000FF')
);
$cdrFlagArr=array(
array('num' => '0', 'remark' => 'Off', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'On', 'color' => '#0000FF')
);
$voFlagArr=array(
array('num' => '0', 'remark' => 'Off', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'On', 'color' => '#0000FF')
);
if($DEFAULT_SYS == 'MSC'){
$tgTypeArr=array(
array('num' => '0', 'remark' => 'PSTN', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'HPLMN', 'color' => '#0000FF'),
array('num' => '2', 'remark' => 'VPLMN', 'color' => '#0000FF'),
array('num' => '3', 'remark' => 'SUB', 'color' => '#0000FF'),
array('num' => '4', 'remark' => 'IP', 'color' => '#0000FF'),
array('num' => '5', 'remark' => 'Intercept', 'color' => '#0000FF'),
array('num' => '6', 'remark' => 'Interconnection', 'color' => '#0000FF')
);
}else{
$tgTypeArr=array(
array('num' => '0', 'remark' => 'PSTN', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'HPLMN', 'color' => '#0000FF'),
array('num' => '2', 'remark' => 'VPLMN', 'color' => '#0000FF'),
array('num' => '3', 'remark' => 'SUB', 'color' => '#0000FF'),
array('num' => '4', 'remark' => 'IP', 'color' => '#0000FF'),
//array('num' => '5', 'remark' => 'GP', 'color' => '#0000FF'),
array('num' => '5', 'remark' => 'Intercept', 'color' => '#0000FF'),
array('num' => '6', 'remark' => 'Interconnection', 'color' => '#0000FF')
);
}
$atFlagArr=array(
array('num' => '0', 'remark' => 'N', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Y', 'color' => '#0000FF')
);
$lpFlagArr=array(
array('num' => '0', 'remark' => 'N', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Y', 'color' => '#0000FF')
);
$netTypeArr=array(
array('num' => '0', 'remark' => 'Inter', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Inter-S', 'color' => '#0000FF'),
array('num' => '2', 'remark' => 'NAT', 'color' => '#0000FF'),
array('num' => '3', 'remark' => 'NI-S', 'color' => '#0000FF'),
array('num' => '4', 'remark' => '--', 'color' => '#0000FF')
);
$cirTypeArr=array(
array('num' => '0', 'remark' => 'Clockwise', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'Anti-C', 'color' => '#0000FF'),
array('num' => '2', 'remark' => 'Odd', 'color' => '#0000FF'),
array('num' => '3', 'remark' => 'Even', 'color' => '#0000FF'),
array('num' => '4', 'remark' => '--', 'color' => '#0000FF')
);
$backFlagArr=array(
array('num' => '0', 'remark' => 'Off', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'On', 'color' => '#0000FF')
);
if($DEFAULT_SYS == 'MSC'){
$tgLocationArr=array(
array('num' => '0', 'remark' => 'MSC-0', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'MSC-1', 'color' => '#0000FF'),
array('num' => '2', 'remark' => 'Both', 'color' => '#FF0000'),
array('num' => '3', 'remark' => 'Spare', 'color' => '#0000FF')
);
}else{
$tgLocationArr=array(
array('num' => '0', 'remark' => 'SN-0', 'color' => '#FF0000'),
array('num' => '1', 'remark' => 'SN-1', 'color' => '#0000FF'),
array('num' => '2', 'remark' => 'Both', 'color' => '#FF0000'),
array('num' => '3', 'remark' => 'Spare', 'color' => '#0000FF')
);
}
//****************************************************************
//函数
// ChComm($sysId)
//函数说明:检查命令处理结果
//
//变量说明:
// 无
//
//
//返回值:$paramType
//$nSubSysParam = 0;
//$nGlobalSubSysParam = 1;
//$nGlobalSysParam = 2;
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function ChComm($sysId,$chkType=1)
{
global $omc_db;
global $remark,$nProcFail,$nWaitProc,$nInProc,$nOutProc;
$commTable = "parameterComm";
$DEBUG = 0;
$sysIdArr = explode('_',$sysId);
$sysTypeNo = $sysIdArr[0];
$sysNo = $sysIdArr[1];
$subSysNo = $sysIdArr[2];
if($chkType==0)
$selComm = " SELECT commState,remark FROM $commTable WHERE sysTypeNo = '$sysTypeNo' ";
else
$selComm = " SELECT commState,remark FROM $commTable WHERE sysTypeNo = '$sysTypeNo' AND sysNo = '$sysNo' ";
if($DEBUG)echo "
selComm=$selComm";
$selRes = @mysqli_query($pubConn,$selComm);
$selRow = @mysqli_fetch_array($selRes);
echo mysqli_error($pubConn);
do
{
$temCommState = $selRow[commState];
if($selRow[remark]){
$remark = $selRow[remark];
//echo "
remark=$remark";
}
//echo "
temCommState=$temCommState";
if($temCommState == $nWaitProc)
return($nWaitProc);
elseif($temCommState == $nInProc)
return($nInProc);
elseif($temCommState == $nOutProc)
$commState = $nOutProc;
else
$commState = 0;
}while($selRow = @mysqli_fetch_array($selRes));
return($commState);
}
//****************************************************************
//函数
// 从Buffer_2拷贝到$buffer_1
//函数说明:
//
//变量说明:
// 无
//
//
//返回值:$paramType
//
//
//
//作者
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function copyBuffer($buffer_1,$buffer_2,$wDef,$type='1')
{
global $sysTypeNo_0,$sysTypeNo_1,$db_0,$db_1,$tb_0,$tb_1,$tb_2,$wTg;
$DEBUG = 0;
$addWer = " AND (LENGTH($buffer_2) > 0) AND $buffer_2 != 'Null' AND $buffer_2 NOT LIKE 'Error%' ";
//Attributes of TG
if($type){
$uTgSql = " UPDATE $tb_2 set $buffer_1=$buffer_2 WHERE subSysNo = '99' ".$wTg.$addWer;
}else{
$uTgSql = " UPDATE $tb_2 set $buffer_1=$buffer_2 WHERE subSysNo = '99' ".$wTg.$wDef.$addWer;
}
if($DEBUG) echo "
uTgSql=$uTgSql ";
$uTgRes = @mysqli_query($pubConn,$uTgSql);
echo mysqli_error($pubConn);
if($uTgRes)
return 1;
else
return 0;
}
//****************************************************************
//函数
// get 或 set
//函数说明:
//
//变量说明:
// 无
//
//
//返回值:$commType
//
//
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function eSetGet($commType)
{
global $sysTypeNo_0,$sysTypeNo_1,$db_0,$db_1,$tb_0,$tb_1,$tb_2,$wTg,$nProcFail,$nWaitProc,$nInProc,$nOutProc;
global $maxNum,$remark,$nGetComm,$nSetComm;
$DEBUG = 0;
if($commType == $nGetComm)
$showType = "Get ";
else
$showType = "Set ";
//2.1.4
$sysId = $sysTypeNo_1."_99";
$objIdStr = "2.1.4.*";
$cic = sysCommSend($sysId,$commType,$objIdStr);
$i = 0;
while(1)
{
//echo "
i=$i";
if($i == 0)
echo "
$showType Attributes of TG ";
if($i > $maxNum){
echo "
Timeout";
flush();
break;
}
echo "
";
flush();
$sysId = $sysTypeNo_1;
$chkType = "0";
$chRes=ChComm($sysId,$chkType);
//echo "
chRes=$chRes";
if($chRes == $nOutProc || $chRes == $nProcFail){
$pNext2 = 1;
if($chRes == $nProcFail)
echo "
$remark
";
elseif($remark == 'response timeout')
echo "
$remark
";
else
echo "
$remark
";
flush();
break;
}
sleep(1);
$i++;
}
return 1;
}//end of function
if($saveSys)
{
/****************copy initValue to editValue******************/
$buffer_1 = "editValue";
$buffer_2 = "initValue";
$edCin=copyBuffer($buffer_1,$buffer_2,$wDef);
if($DEBUG) echo "
edCin=$edCin";
//Get the value to "readValue" buffer.
eSetGet($nGetComm);//get value
/****************copy readValue to undoValue******************/
$buffer_1 = "undoValue";
$buffer_2 = "readValue";
$edCin=copyBuffer($buffer_1,$buffer_2,$wDef);
if($DEBUG) echo "
edCin=$edCin";
//set editValue to system.
eSetGet($nSetComm);
$tgSetFlag = 1;
session_register("tgSetFlag");
//if get fail ( undoValue = NULL ) , unregister set flag.
$where = "WHERE level_1=2 AND level_2=1 AND level_3=4";
$selSql = "SELECT distinct undoValue FROM $tb_2 $where ORDER BY undoValue";
if($DEBUG) echo "selSql(1)=$selSql,db=$db_1
";
$selRes = @mysqli_query($pubConn,$selSql);
$selRow = mysqli_fetch_array($selRes);
if ('' == $selRow[0]) {
session_unregister("tgSetFlag");
}
sleep(1);
echo "";
}//end of set sys
elseif($readSys)
{
eSetGet($nGetComm);//get value
/****************copy readValue to initValue******************/
$buffer_1 = "initValue";
$buffer_2 = "readValue";
$inCre=copyBuffer($buffer_1,$buffer_2,$wDef);
if($DEBUG) echo "
inCre=$inCr";
sleep(1);
echo "";
}//end of $readSys
elseif($undoSet){
/****************copy readValue to editValue******************/
$buffer_1 = "editValue";
$buffer_2 = "undoValue";
$edCin=copyBuffer($buffer_1,$buffer_2,$wDef);
if($DEBUG) echo "
edCin=$edCin";
if ( 1 == eSetGet($nSetComm) ) {
$buffer_1 = "initValue";
$buffer_2 = "undoValue";
$edCin=copyBuffer($buffer_1,$buffer_2,$wDef);
if($DEBUG) echo "
edCin=$edCin";
}
session_unregister("tgSetFlag");
sleep(1);
echo "";
}
//end undoSet
elseif($saveDisk)
{
/****************copy initValue to editValue******************/
$buffer_1 = "editValue";
$buffer_2 = "initValue";
$inCed=copyBuffer($buffer_1,$buffer_2,$wDef);
if($DEBUG) echo "
$inCed=$$inCed";
if($inCed)
echo "
Save success.";
else
echo "
Save Failure.";
flush();
sleep(1);
echo "";
}//end of $saveDisk
elseif($readDisk)
{
/****************copy editValue to initValue******************/
$buffer_1 = "initValue";
$buffer_2 = "editValue";
$loadType = 1;
$edCin=copyBuffer($buffer_1,$buffer_2,$wDef,$loadType);
if($DEBUG) echo "
edCin=$edCin";
if($edCin)
echo "
Read success.";
else
echo "
Read failure.";
flush();
sleep(1);
echo "";
}//end of $comSys
elseif($delete)
{
$delSql = " UPDATE $tb_2 set initValue = '$defaultValue' WHERE subSysNo = '99' ".$wTg. " AND instanceNo = $delValue ";
//echo "
delSql=$delSql";
$delRes = @mysqli_query($pubConn,$delSql);
echo mysqli_error($pubConn);
}
elseif($saveComm) {
session_unregister("tgSetFlag");
$temTb = ${tb_."2"};
$updSql = " UPDATE $temTb set initValue = 'B5' WHERE subSysNo = '99' AND level_1 = '3' AND level_2 = '2' ";
//echo "
updSql=$updSql";
$updRes = @mysqli_query($pubConn,$updSql);
//echo "
updRes=$updRes";
if($sTimeOut)
break;
$sysId = $sysTypeNo_1."_99";
$commType = $nSetComm;
$objIdStr = "3.2.*";
$flag = sysCommSend($sysId,$commType,$objIdStr);
//echo "
flag=$flag";
$i = 0;
while(1)
{
if($i == 0)
echo "
Save parameter to system";
if($i > $maxNum){
echo "
Timeout";
$sTimeOut = 1;
break;
}
echo "
";
flush();
$sysId = $sysTypeNo_1;
$chkType = "0";
$chRes=ChComm($sysId,$chkType);
//echo "
chRes=$chRes";
if($chRes == $nOutProc || $chRes == $nProcFail){
$pNext1 = 1;
if($chRes == $nProcFail)
echo "
$remark
";
elseif($remark == 'response timeout')
echo "
$remark
";
else
echo "
$remark
";
break;
}
sleep(1);
$i++;
}
}
elseif($resetComm)
{
$temTb = ${tb_."2"};
$updSql = " UPDATE $temTb set initValue = '5A' WHERE subSysNo = '99' AND level_1 = '3' AND level_2 = '2' ";
//echo "
updSql=$updSql";
$updRes = @mysqli_query($pubConn,$updSql);
//echo "
updRes=$updRes";
if($sTimeOut)
break;
$sysId = $sysTypeNo_1."_99";
$commType = $nSetComm;
$objIdStr = "3.2.*";
$flag = sysCommSend($sysId,$commType,$objIdStr);
//echo "
flag=$flag";
$i = 0;
while(1)
{
if($i == 0)
echo "
Reset system";
if($i > $maxNum){
echo "
Timeout";
$sTimeOut = 1;
break;
}
echo "
";
flush();
$sysId = $sysTypeNo_1;
$chkType = "0";
$chRes=ChComm($sysId,$chkType);
//echo "
chRes=$chRes";
if($chRes == $nOutProc || $chRes == $nProcFail){
$pNext1 = 1;
if($chRes == $nProcFail)
echo "
$remark
";
elseif($remark == 'response timeout')
echo "
$remark
";
else
echo "
$remark
";
break;
}
sleep(1);
$i++;
}
}
if($readSys || $saveSys || $saveComm || $undoSet||$resetComm){
echo "
";
echo "
$strBack";
exit();
}
/**************select used E1 card*******************/
$getSql = " SELECT sysNo,subSysNo,baseStat
FROM $sysInfoTable
WHERE sysTypeNo='$sysTypeNo_0' AND baseStat > '0'
ORDER BY sysNo,subSysNo
";
//echo "
getSql=$getSql";
$getRes = @mysqli_query($pubConn,$getSql);
$getRow = @mysqli_fetch_array($getRes);
echo mysqli_error($pubConn);
do
{
$sysNo = $getRow[sysNo];
$subSysNo = $getRow[subSysNo];
$cardArr[$sysNo][subSysNo] = $getRow[baseStat];
}while($getRow = @mysqli_fetch_array($getRes));
/************select value to see************/
//Attributes of TG
$tgSql = " SELECT instanceNo,initValue,initValue,readValue FROM $tb_2 WHERE subSysNo = '99' ".$wTg." ORDER BY instanceNo ";
if($DEBUG) echo "
tgSql=$tgSql";
$tgRes = @mysqli_query($pubConn,$tgSql);
$tgRow = @mysqli_fetch_array($tgRes);
echo mysqli_error($pubConn);
$wDef = " AND (";
$defaultValue_1 = "000000000A0382FF00";
do
{
$instanceNo = $tgRow[instanceNo];
$initValue = $tgRow[initValue];
//echo "
$initValue == $defaultValue == $defaultValue_1";
if($initValue == $defaultValue || $initValue == $defaultValue_1){
$tgShow[$instanceNo] = 0;
}else{
$tgShow[$instanceNo] = 1;
$wDef = $wDef." instanceNo = $instanceNo OR ";
}
//echo "
tgShow[$instanceNo]=$tgShow[$instanceNo]";
if($DEBUG)echo "
initValue=$initValue";
$dpc = $tgArr[$instanceNo][2] = substr($initValue,2,6);
if($DEBUG)echo "
dpc=$dpc";
$hex_4 = substr($initValue,8,2);
if($DEBUG)echo "
hex_4=$hex_4";
$bin_4 = omc_keep_length(DecBin(HexDec($hex_4)),0,8);
if($DEBUG)echo "
bin_4=$bin_4";
$tgFlag = $tgArr[$instanceNo][0] = substr($bin_4,7,1);
if($DEBUG)echo "
tgFlag=$tgFlag";
$cdrFlag = $tgArr[$instanceNo][3] = substr($bin_4,6,1);
if($DEBUG)echo "
cdrFlag=$cdrFlag";
$voFlag = $tgArr[$instanceNo][4] = substr($bin_4,5,1);
if($DEBUG)echo "
voFlag=$voFlag";
$tgType = $tgArr[$instanceNo][1] = BinDec(substr($bin_4,2,3));
if($DEBUG)echo "
tgType=$tgType";
$atFlag = $tgArr[$instanceNo][5] = substr($bin_4,1,1);
if($DEBUG)echo "
atFlag=$atFlag";
$lpFlag = $tgArr[$instanceNo][7] = substr($bin_4,0,1);
$netType = $tgArr[$instanceNo][8] = HexDec(substr($initValue,10,2));
if($DEBUG)echo "
netType$netType";
$hex_6 = substr($initValue,12,2);
if($DEBUG)echo "
hex_6=$hex_6";
$bin_6 = omc_keep_length(DecBin(HexDec($hex_6)),0,8);
if($DEBUG)echo "
bin_6=$bin_6";
$cirType = $tgArr[$instanceNo][9] = BinDec(substr($bin_6,6,2));
if($DEBUG)echo "
cirType=$cirType";
$backFlag = $tgArr[$instanceNo][10] = substr($bin_6,5,1);
if($DEBUG)echo "
backFlag=$backFlag";
$tgLct = $tgArr[$instanceNo][11] = BinDec(substr($bin_6,0,2));
if($DEBUG)echo "
tgLct=$tgLct";
$mptyFlag = $tgArr[$instanceNo][12] = BinDec(substr($bin_6,2,1));
if($DEBUG)echo "
mptyFlag=$mptyFlag";
$tgNum = $tgArr[$instanceNo][6] = HexDec(substr($initValue,14,2));
if($DEBUG)echo "
tgNum=$tgNum";
$tandemFlag = $tgArr[$instanceNo][13] = HexDec(substr($initValue,16,2));
if (1 < $tgArr[$instanceNo][13]) {
$tgArr[$instanceNo][13] = 1;
}
if($DEBUG) echo "
tandemFlag={$tgArr[$instanceNo][13]}";
$incomingCallType = $tgArr[$instanceNo][14] = HexDec(substr($initValue,18,2));
if (1 < $tgArr[$instanceNo][14]) {
$tgArr[$instanceNo][14] = 1;
}
if($DEBUG) echo "
incomingCallType={$tgArr[$instanceNo][14]}";
}while($tgRow = @mysqli_fetch_array($tgRes));
$wDef = substr($wDef,0,-3);
$wDef = $wDef.")";
if(strlen($wDef) < 10){
$wDef = 'instanceNo < 0';
}
if($DEBUG)echo "
wDef=$wDef";
$tgShow[0] = "1";
$scroll_x = isset($scroll_x)?$scroll_x:'0';
$scroll_y = isset($scroll_y)?$scroll_y:'0';
echo "