<?php 
 | 
include_once "/Common/Logging.php"; 
 | 
include_once "/language/lang.php"; 
 | 
include_once "/Common/CommFunc.php"; 
 | 
include_once "../cfg/GMT_QueryBillboardCross.php"; 
 | 
  
 | 
header("Content-type: text/html; charset=utf-8"); 
 | 
  
 | 
\Logging\CreateLogging("GMT_QueryBillboardCross.php"); 
 | 
  
 | 
\CommFunc\SessionStart(); 
 | 
  
 | 
$resultInfo = $_POST; 
 | 
$ResultMsg = $resultInfo["ResultMsg"]; 
 | 
  
 | 
#date_default_timezone_set("PRC"); 
 | 
  
 | 
$billboardKeyCh = array( 
 | 
    'Index' => \Lang\gettext('Index'), 
 | 
    'Rank' => \Lang\gettext('排名'), 
 | 
    'Name1' => \Lang\gettext('玩家'), 
 | 
    'ID' => \Lang\gettext('ID'), 
 | 
    'ID2' => \Lang\gettext('ID2'), 
 | 
    'Name2' => \Lang\gettext('账号'), 
 | 
    'Type2' => \Lang\gettext('职业'), 
 | 
    'CmpValue' => \Lang\gettext('比较值1'), 
 | 
    'CmpValue2' => \Lang\gettext('比较值2'), 
 | 
    'CmpValue3' => \Lang\gettext('更新时间'), 
 | 
    'Value1' => \Lang\gettext('其他值1'), 
 | 
    'Value2' => \Lang\gettext('其他值2'), 
 | 
    'Value3' => \Lang\gettext('其他值3'), 
 | 
    'Value4' => \Lang\gettext('其他值4'), 
 | 
    'Value5' => \Lang\gettext('其他值5'), 
 | 
    'Value6' => \Lang\gettext('其他值6'), 
 | 
    'Value7' => \Lang\gettext('其他值7'), 
 | 
    'Value8' => \Lang\gettext('其他值8'), 
 | 
); 
 | 
  
 | 
$billboardCh = GetbillboardCh(); 
 | 
  
 | 
$bbName = ""; 
 | 
$bbType = null; 
 | 
$groupList = array(); 
 | 
$dataTotalDict = array(); 
 | 
$resultList = array(); 
 | 
$groupValue1 = null; 
 | 
$groupValue2 = null; 
 | 
$dataTotal = null; 
 | 
if ($ResultMsg) { 
 | 
    $bbType = $ResultMsg["billboardType"]; 
 | 
    $groupList = $ResultMsg["groupList"]; 
 | 
    $dataTotalDict = $ResultMsg["dataTotalDict"]; 
 | 
    $resultList = $ResultMsg["billboardInfo"]; 
 | 
    $groupValue1 = $ResultMsg["groupValue1"]; 
 | 
    $groupValue2 = $ResultMsg["groupValue2"]; 
 | 
    $dataTotal = $ResultMsg["dataTotal"]; 
 | 
    $billboardKeyChPri = $billboardCh[$bbType]; 
 | 
    $billboardKeyChPri = array_key_exists($bbType, $billboardCh) ? $billboardCh[$bbType] : array(); 
 | 
    $bbName = $billboardKeyChPri['BBName']; 
 | 
} 
 | 
$groupCount = count($groupList); 
 | 
$retCount = count($resultList); 
 | 
  
 | 
$cmpValue3CalcTime = 3786883200; //2090-01-01 00:00:00 的时间戳,用于存比较值3更新时间的计算值 
 | 
?> 
 | 
  
 | 
<br /> 
 | 
<hr /> 
 | 
  
 | 
<a href="/GMToolClient/queryBillboardCross.php"><?php echo \Lang\gettext("查询跨服排行榜"); ?></a>  
 | 
<br/><br/> 
 | 
  
 | 
<?php 
 | 
  
 | 
function showGroup() 
 | 
{ 
 | 
    global $bbName, $groupCount, $groupList, $dataTotalDict, $groupValue1, $groupValue2, $bbType, $ResultMsg; 
 | 
    if ($bbName) { 
 | 
        echo "【" . $bbName . "】<br/>"; 
 | 
    } 
 | 
    echo \Lang\gettext("榜单类型") . ": " . $bbType . "<br/>"; 
 | 
    echo \Lang\gettext("总分组数") . ": " . $groupCount . "<br/>"; 
 | 
  
 | 
    $startRank = $ResultMsg["startRank"]; 
 | 
    $queryCount = $ResultMsg["queryCount"]; 
 | 
    for ($i = 0; $i < $groupCount; $i++) { 
 | 
        $groupInfo = $groupList[$i]; 
 | 
        $groupV1 = $groupInfo[1]; 
 | 
        $groupV2 = $groupInfo[2]; 
 | 
        // if ($groupV1 == $groupValue1 and $groupV2 == $groupValue2) { 
 | 
        //     continue; 
 | 
        // } 
 | 
        echo \Lang\gettext("分组名称") . ": <a href='javascript:doPost(\"/Common/GMCmdProcess.php\",  
 | 
            { 
 | 
                \"billboardType\":$bbType,  
 | 
                \"pack_type\":\"GMT_QueryBillboardCross\", 
 | 
                \"Permission\":\"P_QueryBillboardCross\", 
 | 
                \"groupValue1\":$groupV1, 
 | 
                \"groupValue2\":$groupV2, 
 | 
                \"startRank\":$startRank, 
 | 
                \"queryCount\":$queryCount, 
 | 
            })'>" 
 | 
            . $bbType . "-" . $groupV1 . "-" . $groupV2 . "</a> 总条数:" . $dataTotalDict[$bbType . "-" . $groupV1 . "-" . $groupV2] ."<br/>"; 
 | 
    } 
 | 
} 
 | 
  
 | 
showGroup(); 
 | 
  
 | 
if ($groupValue1 != null) { 
 | 
    echo "<br/>"; 
 | 
    echo \Lang\gettext("查询分组") . ": " . $bbType . "-" . $groupValue1 . "-" . $groupValue2; 
 | 
    echo "    "; 
 | 
    echo \Lang\gettext("数据条数") . ": " . $retCount . " / ". $dataTotal ."<br/>"; 
 | 
    echo "<table id=\"tf\" class=\"border-table\">"; 
 | 
    echo "<tr>"; 
 | 
    foreach ($billboardKeyCh as $key => $value) { 
 | 
        // 没有指定要显示的key 
 | 
        if (($key == "CmpValue2" or \CommFunc\startsWith($key, "Value")) and !array_key_exists($key, $billboardKeyChPri)) { 
 | 
            continue; 
 | 
        } 
 | 
        $keyCh = $value; 
 | 
        if (array_key_exists($key, $billboardKeyChPri)) { 
 | 
            // 指定榜单字段名 
 | 
            $keyCh = $billboardKeyChPri[$key]; 
 | 
        } 
 | 
        echo "<td align='center'>" . $keyCh . "</td>"; 
 | 
    } 
 | 
    echo "</tr>"; 
 | 
  
 | 
    for ($i = 0; $i < $retCount; $i++) { 
 | 
        $dataInfo = $resultList[$i]; 
 | 
        echo "<tr>"; 
 | 
        echo "<td align='center'>" . ($dataInfo["Index"]?$dataInfo["Index"]:0) . "</td>"; 
 | 
  
 | 
        foreach ($billboardKeyCh as $key => $value) { 
 | 
            if ($key == "Index") { 
 | 
                continue; 
 | 
            } 
 | 
            // 没有指定要显示的key 
 | 
            if (($key == "CmpValue2" or \CommFunc\startsWith($key, "Value")) and !array_key_exists($key, $billboardKeyChPri)) { 
 | 
                continue; 
 | 
            } 
 | 
            $widgetName = "lab" . $key . $i; 
 | 
            $tdContent = $dataInfo[$key]; 
 | 
            if ($key == "CmpValue3" and !array_key_exists($key, $billboardKeyChPri)) { 
 | 
                $updTime = $cmpValue3CalcTime  - $tdContent; 
 | 
                $tdContent = date("Y-m-d H:i:s", $updTime); // 更新数据时间 
 | 
            } 
 | 
            $tdContent = '<label name="' . $widgetName . '" id="' . $widgetName . '"/>' . $tdContent . '</label>'; 
 | 
            if ($key == "Name1" || $key == "Name2") { 
 | 
                $align = "left"; 
 | 
            } else { 
 | 
                $align = "center"; 
 | 
            } 
 | 
            echo "<td align='" . $align . "'>" . $tdContent . "</td>"; 
 | 
        } 
 | 
        echo "</tr>"; 
 | 
    } 
 | 
    echo "</table>"; 
 | 
    if ($retCount >= 20) { 
 | 
        showGroup(); 
 | 
    } 
 | 
} else if ($groupCount > 0) { 
 | 
    echo "<br/>" . \Lang\gettext("点击分组名称可查询对应分组榜单排行数据") . "! <br/>"; 
 | 
} 
 | 
  
 | 
?> 
 | 
  
 | 
<hr /> 
 | 
<script> 
 | 
    function doPost(to, p) { // to:提交动作(action),p:参数 
 | 
        var myForm = document.createElement("form"); 
 | 
        myForm.method = "post"; 
 | 
        myForm.action = to; 
 | 
        for (var i in p) { 
 | 
            var myInput = document.createElement("input"); 
 | 
            myInput.setAttribute("name", i); // 为input对象设置name  
 | 
            myInput.setAttribute("value", p[i]); // 为input对象设置value  
 | 
            myForm.appendChild(myInput); 
 | 
        } 
 | 
        document.body.appendChild(myForm); 
 | 
        myForm.submit(); 
 | 
        document.body.removeChild(myForm); // 提交后移除创建的form  
 | 
    } 
 | 
</script> 
 | 
<style type="text/css"> 
 | 
    .border-table { 
 | 
        border-collapse: collapse; 
 | 
        border: none; 
 | 
    } 
 | 
  
 | 
    .border-table td { 
 | 
        border: solid #000 1px; 
 | 
    } 
 | 
</style> 
 |