<?php
|
|
/**
|
* 添加非GMT命令常规后台日志,即常规网站操作日志
|
* 注意:常规操作日志仅成功时添加,失败的日志不用添加,重复操作至成功即可
|
* @param array $logMsg 操作日志额外信息 {"server_name":retMsg, ...}
|
*/
|
function AddSuccessLog($SPID, $UserAccount, $Permission, $Post = array(), $logMsg = array())
|
{
|
$SuccessMsg = array_merge(array("Result" => "OK"), $logMsg);
|
return AddGMTLog($SPID, $UserAccount, $Permission, $Post, \User\GMTCheckState::OK, $SuccessMsg);
|
}
|
|
/**
|
* 添加命令操作动态日志
|
* @param array $SuccessMsg 成功返回的服务器结果 {"server_name":retMsg, ...}
|
* @param array $ErrorMsg 失败返回的服务器结果 {"server_name":retMsg, ...}
|
*/
|
function AddGMTLog($SPID, $UserAccount, $Permission, $Post, $CheckState, $SuccessMsg = array(), $ErrorMsg = array())
|
{
|
if (!$SPID || !$UserAccount || !$Permission) {
|
return;
|
}
|
if ($Permission == "P_DelPlayerItem") {
|
if (!array_key_exists("delItemCount", $Post)) {
|
// 只记录最终删除请求,查询的不记录
|
return;
|
}
|
}
|
if ($Permission == \User\Permission::P_PersonalMailMgr) {
|
if (!array_key_exists("opType", $Post) || $Post["opType"] != "del") {
|
// 只记录最终删除请求,查询的不记录
|
return;
|
}
|
}
|
// 单服非针对玩家的日志动态增加存储服务器
|
if ($Post["MultiServer"] != 1 && !array_key_exists("playerFind", $Post) && !array_key_exists("playerList", $Post)) {
|
$Post["server_id"] = $_SESSION['server_id'];
|
}
|
$GUID = \CommFunc\guid();
|
$insArray = array(
|
"GUID" => $GUID, //日志GUID
|
"SPID" => $SPID, //所属项目appid
|
"UserAccount" => $UserAccount, //操作账号
|
"Permission" => $Permission, //后台权限类型
|
"Post" => $Post, //post数据
|
"IP" => \CommFunc\GetIP(),
|
"OPTime" => time(), //操作时间
|
"SuccessMsg" => $SuccessMsg, //成功的信息
|
"ErrorMsg" => $ErrorMsg, //失败的信息,如返回的错误信息或者失败的服务器错误集合
|
"CheckState" => $CheckState, //审核状态
|
);
|
if (!\DBOper\Insert("GMTLog", $insArray)) {
|
return;
|
};
|
return true;
|
}
|
|
function ParseGMTLogTDHtml_Post($logInfo, $showDetail, &$tdHtml, $table = false)
|
{
|
$Post = $logInfo["Post"];
|
$retShort = "";
|
$retDetal = "";
|
$retTable = "";
|
$br = "#br#";
|
|
//个人邮件
|
if ($logInfo["Permission"] == \User\Permission::P_PersonalMailSend) {
|
$moneyNameInfo = \CommFunc\getCfgKeyNameContent("money", true);
|
$itemIDNameInfo = \CommFunc\getCfgKeyNameContent("item", true);
|
|
$showKeyArray = array(
|
"playerList" => \Lang\gettext("收件人"),
|
"EndDate" => \Lang\gettext("结束时间"),
|
"Title" => \Lang\gettext("邮件标题"),
|
"Text" => \Lang\gettext("邮件内容"),
|
"Gold" => $moneyNameInfo["1"],
|
"GoldPaper" => $moneyNameInfo["2"],
|
"Silver" => $moneyNameInfo["3"],
|
"itemNums" => \Lang\gettext("物品")
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
if ($k == "EndDate") {
|
$tdv = $Post["EndDate"] . " " . $Post["EndHour"] . ":" . $Post["EndMinute"] . ":" . $Post["EndSecond"];
|
} else if ($k == "itemNums") {
|
$tdv = "";
|
$itemNums = explode(",", $Post[$k]);
|
for ($i = 0; $i < count($itemNums); $i++) {
|
$num = $itemNums[$i];
|
$itemID = intval($Post["ItemID" . $num]);
|
$ItemCnt = intval($Post["ItemCnt" . $num]);
|
$IsBind = intval($Post["IsBind" . $num]);
|
if ($itemID <= 0 || $ItemCnt <= 0) {
|
continue;
|
}
|
if ($IsBind == 1) {
|
$tdv .= "errorcolorleft[" . \Lang\gettext('拍品') . "]errorcolorright";
|
}
|
if (array_key_exists($itemID, $itemIDNameInfo)) {
|
$tdv .= $itemIDNameInfo[$itemID] . "(" . $itemID . ")" . " x" . $ItemCnt;
|
} else {
|
$tdv .= "errorcolorleft" . \Lang\gettext("未知物品ID") . "(" . $itemID . ")" . " x" . $ItemCnt . "errorcolorright";
|
}
|
$tdv .= $br;
|
}
|
} else {
|
$tdv = $Post[$k];
|
}
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='500'>" . $tdv . "</td></tr>";
|
$retDetal .= $kname . " : " . $tdv . $br;
|
}
|
$retTable .= "</table>";
|
$retShort = $Post["playerList"] . "<br/>" . $Post["Title"];
|
}
|
//全服邮件
|
else if ($logInfo["Permission"] == \User\Permission::P_ServerMailSend) {
|
$moneyNameInfo = \CommFunc\getCfgKeyNameContent("money", true);
|
$itemIDNameInfo = \CommFunc\getCfgKeyNameContent("item", true);
|
|
$JobNames = array("1" => \Lang\gettext("枪豪"), "2" => \Lang\gettext("道师"), "3" => \Lang\gettext("剑修"));
|
$showKeyArray = array(
|
"GUID" => \Lang\gettext("邮件GUID"),
|
"EndDate" => \Lang\gettext("结束时间"),
|
"Job" => \Lang\gettext("职业多选"),
|
"PlayerLV" => \Lang\gettext("最低等级"),
|
"LimitLVType" => \Lang\gettext("升级可领"),
|
"CheckState" => \Lang\gettext("需要审核"),
|
"Title" => \Lang\gettext("邮件标题"),
|
"Text" => \Lang\gettext("邮件内容"),
|
"Gold" => $moneyNameInfo["1"],
|
"GoldPaper" => $moneyNameInfo["2"],
|
"Silver" => $moneyNameInfo["3"],
|
"itemNums" => \Lang\gettext("物品")
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
if ($k == "EndDate") {
|
$tdv = $Post["EndDate"] . " " . $Post["EndHour"] . ":" . $Post["EndMinute"] . ":" . $Post["EndSecond"];
|
} else if ($k == "itemNums") {
|
$tdv = "";
|
$itemNums = explode(",", $Post[$k]);
|
for ($i = 0; $i < count($itemNums); $i++) {
|
$num = $itemNums[$i];
|
$itemID = intval($Post["ItemID" . $num]);
|
$ItemCnt = intval($Post["ItemCnt" . $num]);
|
$IsBind = intval($Post["IsBind" . $num]);
|
if ($itemID <= 0 || $ItemCnt <= 0) {
|
continue;
|
}
|
if ($IsBind == 1) {
|
$tdv .= "errorcolorleft[" . \Lang\gettext('拍品') . "]errorcolorright";
|
}
|
if (array_key_exists($itemID, $itemIDNameInfo)) {
|
$tdv .= $itemIDNameInfo[$itemID] . "(" . $itemID . ")" . " x" . $ItemCnt;
|
} else {
|
$tdv .= "errorcolorleft" . \Lang\gettext("未知物品ID") . "(" . $itemID . ")" . " x" . $ItemCnt . "errorcolorright";
|
}
|
$tdv .= $br;
|
}
|
} else if ($k == "Job") {
|
$tdv = "";
|
foreach ($JobNames as $job => $jName) {
|
if ($Post["Job" . $job] == "on") {
|
if ($tdv) {
|
$tdv .= "、";
|
}
|
$tdv .= $jName;
|
}
|
}
|
} else if ($k == "LimitLVType") {
|
$tdv = $Post[$k] == "0" ? \Lang\gettext("不能") : \Lang\gettext("可以");
|
} else if ($k == "CheckState") {
|
$tdv = $Post[$k] == "0" ? \Lang\gettext("不需要") : \Lang\gettext("需要");
|
} else {
|
$tdv = $Post[$k];
|
}
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='500'>" . $tdv . "</td></tr>";
|
$retDetal .= $kname . " : " . $tdv . $br;
|
}
|
$retTable .= "</table>";
|
$retShort = $Post["Title"];
|
}
|
//充值
|
else if ($logInfo["Permission"] == \User\Permission::P_CTGReq) {
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("收款方"),
|
"value" => \Lang\gettext("商品编号"),
|
"appID" => \Lang\gettext("appID")
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerFind'] . "<br/>" . $Post['value'];
|
}
|
//代币发放
|
else if ($logInfo["Permission"] == \User\Permission::P_AddPayCoin) {
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("目标玩家"),
|
"value" => \Lang\gettext("代币")
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerFind'] . "<br/>" . $Post['value'];
|
}
|
//广播
|
else if ($logInfo["Permission"] == \User\Permission::P_BroadCast || $logInfo["Permission"] == \User\Permission::P_BroadCastMulti) {
|
$showKeyArray = array(
|
"server_id" => \Lang\gettext("服务器"),
|
"startDate" => \Lang\gettext("广播时间"),
|
"interval" => \Lang\gettext("发送间隔"),
|
"isDelOthers" => \Lang\gettext("清除之前的广播"),
|
"msg" => \Lang\gettext("广播信息"),
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
if ($k == "server_id" && $logInfo["Permission"] == \User\Permission::P_BroadCastMulti) {
|
continue;
|
}
|
$tdv = $Post[$k];
|
if ($k == "startDate") {
|
$tdv = $Post["startDate"] . $Post["startTime"] . " ~ " . $Post["endDate"] . $Post["endTime"];
|
} else if ($k == "isDelOthers") {
|
$tdv = $tdv == "on" ? \Lang\gettext("是") : \Lang\gettext("否");
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='130'>" . $kname . "</td><td width='520'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
if ($logInfo["Permission"] == \User\Permission::P_BroadCast) {
|
$retShort = $Post['server_id'];
|
} else {
|
$retShort = \Lang\gettext("广播信息");
|
}
|
}
|
//禁言
|
else if ($logInfo["Permission"] == \User\Permission::P_ForbidTalk) {
|
$showKeyArray = array(
|
"server_id" => \Lang\gettext("服务器"),
|
"accID" => \Lang\gettext("对象"),
|
"forbidType" => \Lang\gettext("类型"),
|
"forbidDevice" => \Lang\gettext("是否禁言/解禁设备"),
|
"forbitHour" => \Lang\gettext("禁言总时长"),
|
);
|
$tag = "";
|
$forbidType = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "accID") {
|
if ($Post["accID"]) {
|
$tag = $Post["accID"];
|
} else if ($Post["playerName"]) {
|
$tag = $Post["playerName"];
|
} else {
|
$tag = $Post["IP"];
|
}
|
$tdv = $tag;
|
} else if ($k == "forbidType") {
|
$forbidType = $tdv == "1" ? \Lang\gettext("禁言") : \Lang\gettext("解禁");
|
$tdv = $forbidType;
|
} else if ($k == "forbidDevice") {
|
$tdv = ($Post["forbidDevice"] || $Post["unForbidDevice"]) ? \Lang\gettext("是") : \Lang\gettext("否");
|
} else if ($k == "forbitHour") {
|
if ($Post["forbidType"] != "1") {
|
continue;
|
}
|
$tdv = $Post["forbitHour"] . \Lang\gettext("时") . $Post["forbitMinute"] . \Lang\gettext("分");
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $tag . "<br/>" . $forbidType;
|
}
|
//封号
|
else if ($logInfo["Permission"] == \User\Permission::P_ForbidLogin) {
|
$showKeyArray = array(
|
"server_id" => \Lang\gettext("服务器"),
|
"accID" => \Lang\gettext("对象"),
|
"forbidType" => \Lang\gettext("类型"),
|
);
|
$tag = "";
|
$forbidType = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "accID") {
|
if ($Post["accID"]) {
|
$tag = $Post["accID"];
|
} else if ($Post["playerName"]) {
|
$tag = $Post["playerName"];
|
} else {
|
$tag = $Post["IP"];
|
}
|
$tdv = $tag;
|
} else if ($k == "forbidType") {
|
$forbidType = $tdv == "1" ? \Lang\gettext("封号") : \Lang\gettext("解封");
|
$tdv = $forbidType;
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $tag . "<br/>" . $forbidType;
|
}
|
//踢下线
|
else if ($logInfo["Permission"] == \User\Permission::P_KickPlayer) {
|
$showKeyArray = array(
|
"server_id" => \Lang\gettext("服务器"),
|
"accID" => \Lang\gettext("对象"),
|
);
|
$tag = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "accID") {
|
if ($Post["accID"]) {
|
$tag = $Post["accID"];
|
} else {
|
$tag = $Post["playerName"];
|
}
|
$tdv = $tag;
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $tag;
|
}
|
//转让仙盟
|
else if ($logInfo["Permission"] == \User\Permission::P_FamilyTransfer) {
|
$showKeyArray = array(
|
"server_id" => \Lang\gettext("服务器"),
|
"familyName" => \Lang\gettext("转让仙盟"),
|
"queryTag" => \Lang\gettext("转让玩家"),
|
);
|
$tag = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post["familyName"] . "<br/>" . $Post["queryTag"];
|
}
|
//解散仙盟
|
else if ($logInfo["Permission"] == \User\Permission::P_FamilyDismiss) {
|
$showKeyArray = array(
|
"server_id" => \Lang\gettext("服务器"),
|
"familyName" => \Lang\gettext("解散仙盟"),
|
);
|
$tag = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post["server_id"] . "<br/>" . $Post["familyName"];
|
}
|
//扣除货币
|
else if ($logInfo["Permission"] == \User\Permission::P_DelPlayerMoney) {
|
$moneyNameInfo = \CommFunc\getCfgKeyNameContent("money", true);
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("目标玩家"),
|
"moneyType" => \Lang\gettext("货币类型"),
|
"moneyValue" => \Lang\gettext("扣除数量"),
|
"delRemark" => \Lang\gettext("扣除说明"),
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "moneyType") {
|
$tdv = $moneyNameInfo[$tdv];
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerFind'] . "<br/>"
|
. $moneyNameInfo[$Post['moneyType']] . " : " . $Post['moneyValue'];
|
}
|
//扣除物品
|
else if ($logInfo["Permission"] == \User\Permission::P_DelPlayerItem) {
|
$itemIDNameInfo = \CommFunc\getCfgKeyNameContent("item", true);
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("目标玩家"),
|
"itemID" => \Lang\gettext("物品ID"),
|
"delItemCount" => \Lang\gettext("扣除数量"),
|
"delGUIDInfo" => \Lang\gettext("扣除GUID"),
|
"delRemark" => \Lang\gettext("扣除说明"),
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "itemID") {
|
$tdv = $itemIDNameInfo[$tdv];
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerFind'] . "<br/>"
|
. $itemIDNameInfo[$Post['itemID']] . " : " . $Post['delItemCount'];
|
}
|
//称号管理
|
else if ($logInfo["Permission"] == \User\Permission::P_AddTitle) {
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("目标玩家"),
|
"titleID" => \Lang\gettext("称号 (ID)"),
|
"expireTime" => \Lang\gettext("有效期秒"),
|
"opType" => \Lang\gettext("操作类型"),
|
);
|
$opTypeName = array("add" => \Lang\gettext("激活"), "del" => \Lang\gettext("删除"));
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "opType") {
|
$tdv = $opTypeName[$tdv];
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerFind'] . "<br/>"
|
. $opTypeName[$Post['opType']] . \Lang\gettext("称号 (ID)") . " : " . $Post['titleID'];
|
}
|
//设置GM
|
else if ($logInfo["Permission"] == \User\Permission::P_SetGMLevel) {
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("目标玩家"),
|
"gmLevel" => \Lang\gettext("GMLevel"),
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerFind'] . "<br/>" . \Lang\gettext("GMLevel") . " : " . $Post['gmLevel'];
|
}
|
//执行命令
|
else if ($logInfo["Permission"] == \User\Permission::P_Execfile) {
|
$showKeyArray = array(
|
"playerFind" => \Lang\gettext("目标玩家"),
|
"cmdInfo" => \Lang\gettext("输入命令"),
|
);
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "playerFind") {
|
if (!$tdv) {
|
continue;
|
}
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='300'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
if ($Post['playerFind']) {
|
$retShort = $Post['playerFind'] . "<br/>" . $Post['cmdInfo'];
|
} else {
|
$retShort = $Post['cmdInfo'];
|
}
|
}
|
//个人邮件管理
|
else if ($logInfo["Permission"] == \User\Permission::P_PersonalMailMgr) {
|
$showKeyArray = array(
|
"playerList" => \Lang\gettext("目标玩家"),
|
"GUIDInfo" => \Lang\gettext("删除GUID"),
|
);
|
$delGUIDCount = 0;
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "GUIDInfo") {
|
$guidArray = explode(",", $tdv);
|
$delGUIDCount = count($guidArray);
|
$tdv = $br;
|
foreach ($guidArray as $guid) {
|
$tdv .= $guid . $br;
|
}
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='500'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $Post['playerList'] . "<br/>" . \Lang\gettext("删除GUID") . " : " . $delGUIDCount;
|
}
|
//全服邮件管理
|
else if ($logInfo["Permission"] == \User\Permission::P_ServerMailMgr) {
|
$showKeyArray = array(
|
"operation" => \Lang\gettext("审核结果"),
|
"GUIDInfo" => \Lang\gettext("邮件GUID"),
|
);
|
$operation = $Post["operation"] == "1" ? \Lang\gettext("通过") : \Lang\gettext("删除");
|
$GUIDCount = 0;
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "GUIDInfo") {
|
$guidArray = explode(",", $tdv);
|
$GUIDCount = count($guidArray);
|
$tdv = $br;
|
foreach ($guidArray as $guid) {
|
$tdv .= $guid . $br;
|
}
|
} else if ($k == "operation") {
|
$tdv = $operation;
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='500'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = \Lang\gettext("审核结果") . " : " . $operation . "<br/>" . \Lang\gettext("邮件GUID") . " : " . $GUIDCount;
|
}
|
//服务器状态管理
|
else if ($logInfo["Permission"] == \User\Permission::P_OPSServerStateMgr) {
|
$showKeyArray = array(
|
"Recommend" => \Lang\gettext("推荐状态"),
|
"serverIDCondArray" => \Lang\gettext("ServerID"),
|
);
|
$RecommendInfo = array("all" => \Lang\gettext("全部"), "1" => \Lang\gettext("是"), "0" => \Lang\gettext("否"));
|
$shortServerID = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "Recommend") {
|
$tdv = $RecommendInfo[$tdv];
|
} elseif ($k == "serverIDCondArray" && isset($tdv)) {
|
$tdvStr = "";
|
foreach ($tdv as $value) {
|
$eValue = $value[0];
|
$gteValue = $value[1];
|
$lteValue = $value[2];
|
if ($eValue > 0) {
|
$tdvStr .= $eValue;
|
$shortServerID .= $eValue . ",";
|
}
|
if ($gteValue > 0 || $lteValue > 0) {
|
if ($eValue > 0) {
|
$tdvStr .= " , ";
|
}
|
if ($gteValue > 0 && $lteValue > 0) {
|
$tdvStr .= $gteValue . " ~ " . $lteValue;
|
$shortServerID .= $gteValue . " ~ " . $lteValue . ",";
|
} else if ($gteValue > 0) {
|
$tdvStr .= ">=" . $gteValue;
|
$shortServerID .= ">=" . $gteValue . ",";
|
} else {
|
$tdvStr .= "<=" . $lteValue;
|
$shortServerID .= "<=" . $lteValue . ",";
|
}
|
}
|
$tdvStr .= $br;
|
}
|
$tdv = $tdvStr;
|
}
|
$retDetal .= $kname . " : " . $tdv . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='500'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $showKeyArray["Recommend"] . " : " . $RecommendInfo[$Post['Recommend']] . "<br/>"
|
. $showKeyArray["serverIDCondArray"] . " : " . $shortServerID;
|
}
|
//刷新选服列表
|
else if ($logInfo["Permission"] == \User\Permission::P_OPSRefreshServer) {
|
$showKeyArray = array(
|
"JsonBranchList" => \Lang\gettext("选服分支"),
|
);
|
$JsonBranchStr = "";
|
$retTable = "<table border='1' cellspacing='0'>";
|
foreach ($showKeyArray as $k => $kname) {
|
$tdv = $Post[$k];
|
if ($k == "JsonBranchList" && isset($tdv)) {
|
foreach ($tdv as $value) {
|
if ($JsonBranchStr) {
|
$JsonBranchStr .= ",";
|
}
|
$JsonBranchStr .= $value;
|
}
|
$tdv = $JsonBranchStr;
|
}
|
$retDetal .= $kname . " : " . $tdv;
|
$retTable .= "<tr><td style='text-align:center;' width='100'>" . $kname . "</td><td width='500'>" . $tdv . "</td></tr>";
|
}
|
$retTable .= "</table>";
|
$retShort = $showKeyArray["JsonBranchList"] . " : " . $JsonBranchStr;
|
}
|
//默认
|
else {
|
}
|
|
if ($table) {
|
$retTable = str_replace("errorcolorleft", "<font color='#FF0000'>", $retTable);
|
$retTable = str_replace('errorcolorright', "</font>", $retTable);
|
$retTable = str_replace($br, "<br/>", $retTable);
|
$tdHtml = $retTable;
|
} else if ($showDetail) {
|
$retDetal = str_replace("errorcolorleft", "<font color='#FF0000'>", $retDetal);
|
$retDetal = str_replace('errorcolorright', "</font>", $retDetal);
|
$retDetal = str_replace($br, "<br/>", $retDetal);
|
$tdHtml = $retDetal;
|
} else {
|
$title = $retDetal;
|
$title = str_replace("errorcolorleft", "", $title);
|
$title = str_replace('errorcolorright', "", $title);
|
$title = str_replace($br, " ", $title);
|
|
$retShort = str_replace("errorcolorleft", "<font color='#FF0000'>", $retShort);
|
$retShort = str_replace('errorcolorright', "</font>", $retShort);
|
$retShort = str_replace($br, "<br/>", $retShort);
|
$tdHtml = "<span title='" . $title . "'>" . $retShort . "<span>";
|
}
|
}
|
|
function ParseGMTLogTDHtml_Result($logInfo, $showDetail, &$tdHtml, $table = false)
|
{
|
$Permission = $logInfo["Permission"];
|
$SuccessMsg = $logInfo["SuccessMsg"];
|
$ErrorMsg = $logInfo["ErrorMsg"];
|
$Post = $logInfo["Post"];
|
$MultiServer = $Post["MultiServer"];
|
|
$retShort = "";
|
$retDetal = "";
|
$retTable = "";
|
$br = "#br#";
|
|
if (count($ErrorMsg) > 0) {
|
if ($MultiServer) {
|
$retTable .= "<table border='1' cellspacing='0'>";
|
$retTable .= "<caption>" . "errorcolorleft" . \Lang\gettext("失败服务器数") . " : " . count($ErrorMsg) . "errorcolorright" . "</caption>";
|
$retShort = \Lang\gettext("失败服务器数") . ":" . count($ErrorMsg) . "<br/>";
|
$retDetal .= \Lang\gettext("失败服务器数") . " : " . count($ErrorMsg) . $br;
|
foreach ($ErrorMsg as $serverName => $ret) {
|
$retStr = \Lang\gettext("没有返回结果");
|
if (array_key_exists("ResultType", $ret)) {
|
$retStr = GetResultTypeMsg($ret["ResultType"]);
|
} else if (array_key_exists("ErrorNo", $ret)) {
|
$retStr = GetErrorNoMsg($ret["ErrorNo"]);
|
}
|
$retDetal .= $serverName . " : " . $retStr . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>errorcolorleft" . $serverName . "errorcolorright</td>" .
|
"<td width='300'>errorcolorleft" . $retStr . "errorcolorright</td></tr>";
|
}
|
$retTable .= "</table>";
|
} else {
|
foreach ($ErrorMsg as $serverName => $ret) {
|
$retStr = \Lang\gettext("没有返回结果");
|
if (array_key_exists("ResultType", $ret)) {
|
$retStr = GetResultTypeMsg($ret["ResultType"]);
|
} else if (array_key_exists("ErrorNo", $ret)) {
|
$retStr = GetErrorNoMsg($ret["ErrorNo"]);
|
}
|
$retShort .= $retStr;
|
$retDetal = $retShort;
|
if (array_key_exists("ResultMsg", $ret) && !is_array($ret["ResultMsg"])) {
|
$retDetal .= $br . $ret["ResultMsg"];
|
}
|
if (array_key_exists("ErrorStr", $ret) && !is_array($ret["ErrorStr"])) {
|
$retDetal .= $br . $ret["ErrorStr"];
|
}
|
$retTable = $retDetal;
|
}
|
}
|
$retDetal = "errorcolorleft" . $retDetal . "errorcolorright";
|
$retShort = "errorcolorleft" . $retShort . "errorcolorright";
|
$retTable = "errorcolorleft" . $retTable . "errorcolorright";
|
}
|
// 常规网站操作成功日志
|
if ($SuccessMsg["Result"] == "OK") {
|
$retShort = "OK";
|
//服务器状态管理
|
if ($Permission == \User\Permission::P_OPSServerStateMgr) {
|
$RecommendInfo = array("all" => \Lang\gettext("全部"), "1" => \Lang\gettext("是"), "0" => \Lang\gettext("否"));
|
$retShort .= $br . \Lang\gettext("推荐状态") . ":" . $RecommendInfo[$SuccessMsg["Recommend"]];
|
}
|
$retDetal = $retShort;
|
$retTable = $retShort;
|
}
|
// GMT操作日志
|
elseif (count($SuccessMsg) > 0) {
|
if ($MultiServer) {
|
if ($retTable) {
|
$retTable .= "<br/>";
|
}
|
$retTable .= "<table border='1' cellspacing='0'>";
|
$retTable .= "<caption>" . \Lang\gettext("成功服务器数") . " : " . count($SuccessMsg) . "</caption>";
|
$retShort .= \Lang\gettext("成功服务器数") . ":" . count($SuccessMsg) . "<br/>";
|
if ($retDetal) {
|
$retDetal .= "--------------" . $br;
|
}
|
$retDetal .= \Lang\gettext("成功服务器数") . ":" . count($SuccessMsg) . $br;
|
foreach ($SuccessMsg as $serverName => $ret) {
|
if (array_key_exists("ResultType", $ret)) {
|
$retStr = GetResultTypeMsg($ret["ResultType"]);
|
$retDetal .= $serverName . $br;
|
$retTable .= "<tr><td style='text-align:center;' width='200'>" . $serverName . "</td><td width='300'>" . $retStr . "</td></tr>";
|
}
|
}
|
$retTable .= "</table>";
|
} else {
|
foreach ($SuccessMsg as $serverName => $ret) {
|
if (array_key_exists("ResultType", $ret)) {
|
$retShort = GetResultTypeMsg($ret["ResultType"]);
|
$retDetal = $retShort;
|
$retTable = $retShort;
|
if ($ret["ResultMsg"]) {
|
$noResultMsgPerArray = array(\User\Permission::P_PersonalMailMgr);
|
if (!is_array($ret["ResultMsg"])) {
|
$retDetal .= $br . $ret["ResultMsg"];
|
$retTable .= $br . $ret["ResultMsg"];
|
} else if (!in_array($Permission, $noResultMsgPerArray)) {
|
$retTable .= $br . json_encode($ret["ResultMsg"]);
|
}
|
}
|
}
|
}
|
}
|
}
|
|
if (!$retDetal) {
|
$tdHtml = \Lang\gettext("未发送");
|
} else if ($table) {
|
$retTable = str_replace("errorcolorleft", "<font color='#FF0000'>", $retTable);
|
$retTable = str_replace('errorcolorright', "</font>", $retTable);
|
$retTable = str_replace($br, "<br/>", $retTable);
|
$tdHtml = $retTable;
|
} else if ($showDetail) {
|
$retDetal = str_replace("errorcolorleft", "<font color='#FF0000'>", $retDetal);
|
$retDetal = str_replace('errorcolorright', "</font>", $retDetal);
|
$retDetal = str_replace($br, "<br/>", $retDetal);
|
$tdHtml = $retDetal;
|
} else {
|
$title = $retDetal;
|
$title = str_replace("errorcolorleft", "", $title);
|
$title = str_replace('errorcolorright', "", $title);
|
$title = str_replace($br, " ", $title);
|
|
$retShort = str_replace("errorcolorleft", "<font color='#FF0000'>", $retShort);
|
$retShort = str_replace('errorcolorright', "</font>", $retShort);
|
$retShort = str_replace($br, "<br/>", $retShort);
|
$tdHtml = "<span title='" . $title . "'>" . $retShort . "<span>";
|
}
|
}
|