var url = "";
var timeDiff = 0;
var homescore = 0;
var awayscore = 0;
var isfirstTime = true;
jQuery.ajax({
url: "/xi/analysis/time.html",
type: 'GET',
cache: false,
success: function (data) {
var t = new Date(data.substr(0, 4), parseInt(data.substr(4, 2)) - 1, data.substr(6, 2), data.substr(8, 2), data.substr(10, 2), data.substr(10, 2));
timeDiff = parseInt(((new Date()).getTime() - t.getTime()) / 1000);
}
});
function showMatchState(mState, startTime) {
var ms = "";
switch (mState) {
case 5: ms = "点球"; break;
case 4: ms = "加时"; break;
case 3: ms = "下半场"; break;
case 2: ms = "中场"; break;
case 1: ms = "上半场"; break;
case 0: ms = "未开场"; break;
case -1: ms = "完场"; break;
case -10: ms = "取消"; break;
case -11: ms = "待定"; break;
case -12: ms = "腰砍"; break;
case -13: ms = "中断"; break;
case -14: ms = "推迟"; break;
}
if (mState == 1) {
var now = new Date();
var serverTime = now.getTime() / 1000 - timeDiff;
var df = (serverTime - startTime.getTime() / 1000) / 60;
df = parseInt(df);
if (df <= 0) {
ms = "1'";
} else if (df <= 45) {
ms = df.toString() + "'";
} else {
ms = "45+'";
}
} else if (mState == 3) {
var now = new Date();
var serverTime = now.getTime() / 1000 - timeDiff;
var df = (serverTime - startTime.getTime() / 1000) / 60 + 46;
df = parseInt(df);
if (df <= 46) {
ms = "46'";
} else if (df <= 90) {
ms = df.toString() + "'";
} else {
ms = "90+'";
}
}
return ms;
}
function scoreobj(data) {
var q = data.split("^");
this.MatchState = parseInt(q[4]);
this.HomeScore = q[10];
this.AwayScore = q[11];
function getDatetime (timeStr) {
var pattern = /(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/;
var formatedDate = timeStr.replace(pattern, '$1/$2/$3 $4:$5:$6');
var datetime = new Date(formatedDate);
return datetime;
}
this.MatchTime = getDatetime(q[5]);
this.StartTime = q[25]!=""? getDatetime(q[25]):"";
}
function callback(str) {
var nodeVs = document.getElementById("headVs");
var obj =new scoreobj(str);
var nowTime = new Date().getTime();
var matchTime = obj.MatchTime.getTime();
if (obj.MatchState == 0 && nowTime < matchTime) {
nodeVs.innerHTML = "倒计时:" + Math.round((matchTime - nowTime) / 60000) + "分钟";
}
else if (obj.MatchState > 0 || obj.MatchState == -1) {
var homeStyle = "";
var awayStyle = "";
var ischange = false;
if (obj.HomeScore != homescore && !isfirstTime) {
homeStyle = "style='color:yellow'";
isfirstTime = false;
ischange = true;
}
if (obj.AwayScore != awayscore && !isfirstTime) {
awayStyle = "style='color:yellow'";
isfirstTime = false;
ischange = true;
}
nodeVs.innerHTML = "" + obj.HomeScore + "" + showMatchState(obj.MatchState, obj.StartTime) + "" + obj.AwayScore + "";
homescore = obj.HomeScore;
awayscore = obj.awayscore;
if (ischange)
setTimeout(resetScoreColor(), 5000);
}
else {
nodeVs.innerHTML = "" + showMatchState(obj.MatchState, obj.StartTime) + "";
}
if (obj.MatchState > 0) {
setTimeout("showScore()", 5000);
}
else if (obj.MatchState == 0) {
setTimeout("showScore()", 30000);
}
}
function resetScoreColor() {
var obj = document.getElementsByClassName("hgscore");
if (!!obj && obj.length > 0) {
for (var i = 0; i < obj.length; i++) {
obj[i].style.color = "";
}
}
}
function showScore() {
var data = {
url: url,
type: 'GET',
cache: false,
success: callback
}
jQuery.ajax(data);
}
(function loadScore() {
var scheduleId = document.getElementById("hide_scheduleId");
if (!scheduleId)
return false;
url = "/Script/football/GetLiveScore/?scheid=" + scheduleId.value;
showScore();
})();