var stubIt;
var ajaxRefresh = 30000;
function startHomeScores() {
$.ajax({
url: '/en_US/xml/gen/homeScores/homeScores.xml',
type: 'GET',
dataType: 'xml',
error: function(){
//alert('Error loading document');
},
success: function(xmlResp){
onScoreResponse(xmlResp);
loopTimer();
}
});
}
function loopTimer() {
setTimeout("startHomeScores()",ajaxRefresh);
}
var toggle = new Array()
for (i=1;i<6;i++) {
toggle[i] = 0;
}
var old_cookie;
var cookie_array = new Array();
function setCookie(name, value) {
var curCookie = name + "=" + escape(value) + "; expires=Wed, 09-Apr-2016 11:11:11 GMT; path=/; ";
document.cookie = curCookie;
}
function getCookie(name) {
var dc = document.cookie;
var prefix = name + "=";
var begin = dc.indexOf("; " + prefix);
if (begin == -1) {
begin = dc.indexOf(prefix);
if (begin != 0) return "";
} else
begin += 2;
var end = document.cookie.indexOf(";", begin);
if (end == -1)
end = dc.length;
var cook = unescape(dc.substring(begin + prefix.length, end));
return cook;
}
function insRow(lnewrow2) {
x=document.getElementById('scoreTable').insertRow(lnewrow2);
y=x.insertCell(0);
z=document.getElementById('scoreTable').rows[lnewrow2].cells;
z[0].colSpan = "5";
z[0].height = "65";
} //insRow
function delRow(lnewrow2) {
document.getElementById('scoreTable').deleteRow(lnewrow2)
} //delRow
function fillRow(lid,lfullName,lthru,ltoday,lnewrow2) {
id = lid;
pName = lfullName;
pThru = lthru;
pToday = ltoday;
pPhoto = lid + "_sm.jpg";
document.getElementById('scoreTable').rows[lnewrow2].cells[0].innerHTML = "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"173\" height=\"65\"><tr height=\"5\"><td colspan=\"4\"></td></tr><tr height=\"65\"><td width=\"1\"></td><td width=\"42\" valign=\"top\" class=\"homeScores\"><img src=\"http://www.masters.com/images/players/sm/" + pPhoto + "\" width=\"42\" height=\"63\" border=\"0\"></td><td width=\"5\" class=\"homeScores\"></td><td width=\"125\" class=\"homeScores\"><b>" + pName + "</b><br>Today:&nbsp;" + pToday + "<br>Thru:&nbsp;" + pThru + "</td></tr><tr height=\"5\"><td colspan=\"4\"></td></tr></table>";
//document.getElementById('scoreTable').rows[lnewrow2].cells[0].innerHTML = "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"173\" height=\"65\"><tr height=\"5\"><td colspan=\"4\"></td></tr><tr height=\"65\"><td width=\"1\"><spacer type=\"block\" width=\"1\"></td><td width=\"42\" valign=\"top\" class=\"homeScores\"><img src=\"/images/players/sm/" + pPhoto + "\" width=\"42\" height=\"63\" border=\"0\"></td><td width=\"5\" class=\"homeScores\"><spacer type=\"block\" width=\"5\"></td><td width=\"125\" class=\"homeScores\"><b>" + pName + "</b><br>Today:&nbsp;" + pToday + "<br>Thru:&nbsp;" + pThru + "</td></tr><tr height=\"5\"><td colspan=\"4\"></td></tr></table>";
} //fillRow
function addToCookie(lid) {
var newCookie;
var prevCookie = getCookie('homeScores');
//var found = 0;
var crumbs = new Array();
/*
if (prevCookie == undefined) {
} else {
for (var crumb=0;crumb<prevCookie.length;crumb++) {
if (prevCookie[crumb] == id) {
found = 1;
}
}
}
*/
// if (found != 1) {
if (prevCookie == undefined) {
newCookie = lid;
} else if (prevCookie == "") {
newCookie = lid;
} else {
newCookie = prevCookie + "|" + lid;
}
// }
setCookie('homeScores',newCookie);
}
function subtractFromCookie(lid) {
var newCookie;
var prevCookie = getCookie('homeScores');
var prevCookieArray = new Array();
if (prevCookie == undefined) {
} else {
prevCookieArray = prevCookie.split("\|");
}
for (var crumb=0;crumb<prevCookieArray.length;crumb++) {
if (prevCookieArray[crumb] == lid) {
if (prevCookie == undefined) {
newCookie = undefined;
} else if (prevCookie == "") {
newCookie = undefined;
}
} else {
if (prevCookie == undefined) {
newCookie = prevCookieArray[crumb];
} else if (prevCookie == "") {
newCookie = prevCookieArray[crumb];
} else {
if (newCookie == undefined) {
newCookie = prevCookieArray[crumb];
} else {
newCookie = newCookie + "|" + prevCookieArray[crumb];
}
}
}
}
if (newCookie == undefined) {
newCookie = "";
}
setCookie('homeScores',newCookie);
}
function evalCookie(ldropRow,ldropId,ldropName,ldropToday,ldropThru) {
var prevCookie = getCookie('homeScores');
var prevCookieArray = new Array();
//var newrows = 1;
var newrows = 2;
for (i=1;i<6;i++) {
toggle[i] = 0;
}
if (prevCookie == undefined) {
} else if (prevCookie == "") {
} else {
prevCookieArray = prevCookie.split("\|");
}
//for (var b=0;b<5;b++) {
for (var b=1;b<5;b++) {
var c = b+1;
for (var crumb=0;crumb<prevCookieArray.length;crumb++) {
if (ldropId[b] == prevCookieArray[crumb]) {
var newrow2 = b + newrows;
insRow(newrow2);
fillRow(ldropId[b],ldropName[b],ldropThru[b],ldropToday[b],newrow2);
showDiv('homeScoreHover' + c);
newrows = newrows + 1;
toggle[c] = ldropId[b];
}
}
}
}
function evalRow(oldrow,lid,lfullName,lthru,ltoday) {
id = lid;
fullName = lfullName;
thru = lthru;
today = ltoday;
var newrow1 = oldrow;
var newrow2 = oldrow;
if (toggle[newrow1] == 0) {
var prevCookie = getCookie('homeScores');
var prevCookieArray = new Array();
if (prevCookie == undefined) {
} else {
prevCookieArray = prevCookie.split("\|");
}
// Getting rid of first row in array if max=2 is exceeded
//if (prevCookieArray[1] == undefined) {
//} else {
subtractFromCookie(prevCookieArray[0]);
//var xnewrow2 = 0;
var xnewrow2 = 1;
var y=0;
var x=0;
for (b=1;b<6;b++) {
if (toggle[b] != 0) {
if (prevCookieArray[0] == toggle[b]) {
x=xnewrow2 + b;
y=b;
delRow(x);
toggle[y] = 0;
hideDiv('homeScoreHover' + y);
}
xnewrow2++;
}
}
//}
// opening a new row and populating
var found = 0;
addToCookie(id);
for (b=1;b<newrow1;b++) {
if (toggle[b] != 0) {
newrow2++;
}
}
newrow2++;
insRow(newrow2);
fillRow(id,fullName,thru,today,newrow2);
toggle[newrow1] = id;
} else if (toggle[newrow1] != 0) {
// closing a row
subtractFromCookie(id);
for (b=1;b<newrow1;b++) {
if (toggle[b] != 0) {
newrow2++;
}
}
newrow2++;
delRow(newrow2)
toggle[newrow1] = 0
}
return newrow1;
};
//evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');showDiv('homeScoreHover" + j + "');
function onScoreResponse(xmlDoc) {
var xmlDocNode = xmlDoc.getElementsByTagName("homeScores");
var dropId = new Array();
var dropName = new Array();
var dropToday = new Array();
var dropThru = new Array();
var dropRow = new Array();
if (xmlDocNode.length > 0) {
var xmlPlayerNode = xmlDoc.getElementsByTagName("player");
var scoreboard = '';
// scoreboard += "<table><tr><td><div id=\"date\"></div></td></tr></table>";
scoreboard += ' <table id="scoreTable" border="0" cellpadding="0" cellspacing="0" width="173">';
var amount = xmlPlayerNode.length;
if (amount > 5) {
amount = 5;
}
//for (i=0;i<xmlPlayerNode.length;i++) {
for (i=0;i<amount;i++) {
var j=i+1;
var firstName = xmlPlayerNode.item(i).getAttribute('fName');
var lastName = xmlPlayerNode.item(i).getAttribute('lName');
var fullName = firstName + " " + lastName;
var id = xmlPlayerNode.item(i).getAttribute('id');
var score = xmlPlayerNode.item(i).getAttribute('score');
var today = xmlPlayerNode.item(i).getAttribute('today');
var thru = xmlPlayerNode.item(i).getAttribute('thru');
var path = "http://www.masters.com/en_US/players/bio" + id + ".html";
var tvName = firstName.substring(0,1) + ". " + lastName;
//tvName.replace("\\'","'");
dropRow[i] = i;
dropId[i] = id;
dropName[i] = fullName;
dropToday[i] = today;
dropThru[i] = thru;
if (i == 0) {
//scoreboard += "<tr height=\"18\"><td width=\"5\" valign=\"middle\" align=\"left\"><div id=\"homeScoreHover" + j + "\" class=\"homeScoreClass1\"><img src=\"/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" alt=\"\" vspace=\"0\"></div></td><td width=\"11\"><div id=\"homeScore" + j + "\"><img src=\"/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" vspace=\"0\"/></td><td width=\"10\"></td><td width=\"112\" class=\"paleYellowText\" align=\"left\" valign=\"middle\"><a href=\"" + path + "\" class=\"paleYellowS\">" + tvName + "</a></div></td><td width=\"35\" class=\"paleYellowText\" align=\"center\"><b>" + score + "</b></td></tr>";
scoreboard += "<tr height=\"18\"><td width=\"5\" valign=\"middle\" align=\"left\"><div id=\"homeScoreHover" + j + "\" class=\"homeScoreClass1\"><img src=\"http://www.masters.com/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" alt=\"\" vspace=\"0\"></div></td><td width=\"11\"><div id=\"homeScore" + j + "\"><img src=\"http://www.masters.com/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" vspace=\"0\"/></td><td width=\"10\"></td><td width=\"112\" class=\"paleYellowText\" align=\"left\" valign=\"middle\">" + tvName + "</div></td><td width=\"35\" class=\"paleYellowText\" align=\"center\"><b>" + score + "</b></td></tr>";
scoreboard += "<tr><td height=\"63\" colspan=\"5\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"173\" height=\"65\"><tr height=\"5\"><td colspan=\"4\"></td></tr><tr height=\"63\"><td width=\"1\"></td><td width=\"42\" valign=\"top\" class=\"homeScores\"><img src=\"http://www.masters.com/images/players/sm/" + id + "_sm.jpg\" width=\"42\" height=\"63\" border=\"0\"></td><td width=\"5\" class=\"homeScores\"></td><td width=\"125\" class=\"homeScores\"><b>" + fullName + "</b><br>Today:&nbsp;" + today + "<br>Thru:&nbsp;" + thru + "</td></tr><tr height=\"5\"><td colspan=\"4\"></td></tr></table></td></tr>"
//scoreboard += "<tr><td height=\"63\" colspan=\"5\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"173\" height=\"65\"><tr height=\"5\"><td colspan=\"4\"></td></tr><tr height=\"63\"><td width=\"1\"><spacer type=\"block\" width=\"1\"></td><td width=\"42\" valign=\"top\" class=\"homeScores\"><img src=\"/images/players/sm/" + id + "_sm.jpg\" width=\"42\" height=\"63\" border=\"0\"></td><td width=\"5\" class=\"homeScores\"><spacer type=\"block\" width=\"5\"></td><td width=\"125\" class=\"homeScores\"><b>" + fullName + "</b><br>Today:&nbsp;" + today + "<br>Thru:&nbsp;" + thru + "</td></tr><tr height=\"5\"><td colspan=\"4\"></td></tr></table></td></tr>"
} else {
//scoreboard += "<tr height=\"18\"><td width=\"5\" valign=\"middle\" align=\"left\"><div id=\"homeScoreHover" + j + "\" class=\"homeScoreClass1\"><img src=\"/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" alt=\"\" vspace=\"0\"usemap=\"#homeScores" + j + "\"></div></td><td width=\"11\"><map name=\"homeScores" + j + "\"><area alt=\"\" coords=\"0,0,11,11\" href=\"javascript:void(0)\" onClick=\"evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');hideDiv('homeScoreHover" + j + "');measureClick('/home_leaders_" + id + "','/en_US/homeleaders_close.html')\"></map><div id=\"homeScore" + j + "\"><a href=\"javascript:void(0)\" onClick=\"evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');showDiv('homeScoreHover" + j + "');measureClick('/home_leaders_" + id + "','/en_US/homeleaders_open.html')\"><img src=\"/images/misc/ma_ms_0000g1.gif\" width=\"11\" height=\"11\" border=\"0\" vspace=\"0\"/></a></td><td width=\"10\"></td><td width=\"112\" class=\"paleYellowText\" align=\"left\" valign=\"middle\"><a href=\"" + path + "\" class=\"paleYellowS\">" + tvName + "</a></div></td><td width=\"35\" class=\"paleYellowText\" align=\"center\"><b>" + score + "</b></td></tr>";
scoreboard += "<tr height=\"18\"><td width=\"5\" valign=\"middle\" align=\"left\"><div id=\"homeScoreHover" + j + "\" class=\"homeScoreClass1\"><img src=\"http://www.masters.com/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" alt=\"\" vspace=\"0\"usemap=\"#homeScores" + j + "\"></div></td><td width=\"11\"><map name=\"homeScores" + j + "\"><area alt=\"\" coords=\"0,0,11,11\" href=\"javascript:void(0)\" onClick=\"evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');hideDiv('homeScoreHover" + j + "');measureClick('/home_leaders_" + id + "','/en_US/homeleaders_close.html')\"></map><div id=\"homeScore" + j + "\"><a href=\"javascript:void(0)\" onClick=\"evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');showDiv('homeScoreHover" + j + "');measureClick('/home_leaders_" + id + "','/en_US/homeleaders_open.html')\"><img src=\"http://www.masters.com/images/misc/ma_ms_0000g1.gif\" width=\"11\" height=\"11\" border=\"0\" vspace=\"0\"/></a></td><td width=\"10\"></td><td width=\"112\" class=\"paleYellowText\" align=\"left\" valign=\"middle\">" + tvName + "</div></td><td width=\"35\" class=\"paleYellowText\" align=\"center\"><b>" + score + "</b></td></tr>";
//scoreboard += "<tr height=\"18\"><td width=\"5\" valign=\"middle\" align=\"left\"><div id=\"homeScoreHover" + j + "\" class=\"homeScoreClass1\"><img src=\"/images/misc/ma_ms_0000g2.gif\" width=\"11\" height=\"11\" border=\"0\" alt=\"\" vspace=\"0\"usemap=\"#homeScores" + j + "\"></div><spacer type=\"block\" height=\"1\" width=\"5\"></td><td width=\"11\"><map name=\"homeScores" + j + "\"><area alt=\"\" coords=\"0,0,11,11\" href=\"javascript:void(0)\" onClick=\"evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');hideDiv('homeScoreHover" + j + "');measureClick('/home_leaders_" + id + "','/en_US/homeleaders_close.html')\"></map><div id=\"homeScore" + j + "\"><a href=\"javascript:void(0)\" onClick=\"evalRow(" + j + "," + id + ",'" + fullName + "','" + thru + "','" + today + "');showDiv('homeScoreHover" + j + "');measureClick('/home_leaders_" + id + "','/en_US/homeleaders_open.html')\"><img src=\"/images/misc/ma_ms_0000g1.gif\" width=\"11\" height=\"11\" border=\"0\" vspace=\"0\"/></a></td><td width=\"10\"></td><td width=\"112\" class=\"paleYellowText\" align=\"left\" valign=\"middle\"><a href=\"" + path + "\" class=\"paleYellowS\">" + tvName + "</a></div></td><td width=\"35\" class=\"paleYellowText\" align=\"center\"><b>" + score + "</b></td></tr>";
}
}
scoreboard += ' </table>';
var tab = "";
tab += '<tr>';
tab += ' <td width="91">';
tab += ' <img src="http://www.masters.com/images/home/ma_hm_0000n1.gif" width="91" height="31" border="0" alt="Current Leaders" usemap="#cl_map"></td>';
tab += ' <td width="93"><img src="http://www.masters.com/images/home/ma_hm_0000r2.gif" width="93" height="31" border="0" alt="Next on Tee"></td>';
tab += '</tr>';
var stub = " ";
stub += " <table width=\"174\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">";
stub += " <tr>";
stub += " <td>";
stub += "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">";
stub += " <tr>";
stub += " <td align=\"center\" valign=\"top\">";
stub += " <table id=\"groupTable\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
stub += " <tr>";
stub += " <td height=\"56\" width=\"174\" class=\"notRowBg1\" valign=\"middle\">";
stub += " <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">";
//stub += "<tr><td width=\"174\" class=\"boldYellowItalic\" align=\"center\">Please join us<br/>April 9 for<br>live scores from the<br/>2009 Masters Tournament.</td></tr>";
stub += " <tr><td width=\"1\"></td><td width=\"172\" class=\"boldYellowItalic\" align=\"center\"><img src=\"http://www.masters.com/images/misc/mas_ms_cl_stub.gif\" width=\"172\" height=\"244\" border=\"0\" alt=\"\"><td width=\"1\"></td>";
stub += " </table>";
stub += " </td>";
stub += " </tr>";
stub += " </table>";
stub += " </td>";
stub += " </tr>";
stub += " </table>";
//if (selectedTab == "1") {
//document.getElementById("cl").innerHTML = scoreboard;
if (stubIt == 1) {
document.getElementById("cl").innerHTML = stub;
} else {
document.getElementById("cl").innerHTML = scoreboard;
evalCookie(dropRow,dropId,dropName,dropToday,dropThru);
}
//}
/* document.getElementById("homeClockDiv").innerHTML = "";
document.getElementById("homeTabDiv").innerHTML = tab;*/
}
}
startHomeScores();
