/*
COPYRIGHT (c) 2006-2007 SimplyOdds.com

All files in the WagerWidget, including but not limited to programming code,
graphic logos, trademarks, and service marks, are licensed to the end use
solely for presentation in this Widget on the end user's machine and for no
other purpose, and all rights are reserved by SimplyOdds.com.

Reproduction or redistribution of the WagerWidget without written consent from
SimplyOdds.com is prohibited.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

var http_request_ticker = null;
var http_request_button = null;
var http_request_banner = null;
var auto_refresh = null;

var debug = "off";

var connected = 1;
var updateNotified;

var phoneHomeCount = 0;
var leageUpdateCount = 0;

var banners;
var curBannerLink;
var curBannerNum;

var pokerLink;
var casinoLink;

var league;
var bet;
var odds;

var highlight = "#8B0000";

var Lines = {};

var tickerWidth = "420px";
var tickerWidthActual = '';
var ticker;
var ticking;

var hasInnerText;

var opera = false;
var ie = false;
//var ie7 = false;
var mac = false;
var windows = false;
var safari3 = false;
var linux = false;
var firefox3 = false;

var bolden = false;

function load()
{
  hasInnerText =
  (document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;
  //alert(navigator.userAgent);
  if (navigator.userAgent.match('Macintosh')) {
    mac = true;
  }
  if (navigator.userAgent.match('Windows')) {
    windows = true;
  }
  if (navigator.userAgent.match('AppleWebKit')) {
    var agentParser = new XRegExp("AppleWebKit/(<version>\\d+)(\\..+?|\\+) \\(", "k");
    var webkit = agentParser.exec(navigator.userAgent);
    //alert(webkit.version);
    if (webkit.version >= 522) {
      safari3 = true;
    }
  }
  if (navigator.userAgent.match('Firefox/3')) {
    firefox3 = true;
  }
  if (document.all) {
    if (navigator.userAgent.match('Opera')) {
      opera = true;
    } else if (navigator.userAgent.match('MSIE')) {
      ie = true;
      //if (navigator.userAgent.match('MSIE 7')) {
        //ie7 = true;
      //}
    }
  }
  if (navigator.userAgent.match('Linux')) {
    linux = true;
  }
  
  if (windows && !safari3) {
    bolden = true;
  }
  
  if (bolden) {
    document.getElementById("dateText").style.fontWeight = "bold";
  }

  if (linux) {
    document.getElementById("dateText").style.fontSize = '10pt';
  }
  
  phoneHome();
  
  changeDate();
  
  league = readCookie("leaguePref");
  bet = readCookie("betPref");
  odds = readCookie("oddsPref");
  
  if (!league) { league = "NFL"; }
  if (!bet) { bet = "SP"; }
  if (!odds) { odds = "A"; }
  
  if (league == "NFL") {
    document.getElementById("nflButton").src = 'Images/nflbuttononclick.png';
  } else if (league == "MLB") {
    document.getElementById("mlbButton").src = 'Images/mlbbuttononclick.png';
  } else if (league == "NCF") {
    document.getElementById("ncaafButton").src = 'Images/ncaafbuttononclick.png';
  } else if (league == "NCB") {
    document.getElementById("ncaabButton").src = 'Images/ncaabbuttononclick.png';
  } else if (league == "NBA") {
    document.getElementById("nbaButton").src = 'Images/nbabuttononclick.png';
  } else if (league == "NHL") {
    document.getElementById("nhlButton").src = 'Images/nhlbuttononclick.png';
  }
  
  if (bet == "SP") {
    document.getElementById("spreadButton").src = 'Images/spreadbuttononclick.gif';
  } else if (bet == "ML") {
    document.getElementById("lineButton").src = 'Images/linebuttononclick.gif';
  } else if (bet == "OU") {
    document.getElementById("overUnderButton").src = 'Images/overunderbuttononclick.gif';
  }
  
  if (odds == "A") {
    document.getElementById("americButton").src = 'Images/americbuttononclick.gif';
  } else if (odds == "F") {
    document.getElementById("fractionButton").src = 'Images/fractionbuttononclick.gif';
  } else if (odds == "D") {
    document.getElementById("decimalButton").src = 'Images/decimalbuttononclick.gif';
  }
  
  changeLeague(league);
  
  auto_refresh = setInterval(rotateBanner, 30 * 1000);
}

function changeDate() {
  var date = new Date();
  var year = date.getYear();
  if (year < 2000) {
    year += 1900;
  }
  var month = date.getMonth() + 1;
  var dom = date.getDate();
  if (month < 10) {
    month = "0" + month;
  }
  if (dom < 10) {
    dom = "0" + dom;
  }
  var dateStr = month + "/" + dom + "/" + year;
  setText(document.getElementById("dateText"), dateStr);
}

function phoneHome() {
  tickerRequest();
  bannerRequest();
  buttonRequest();
  phoneHomeCount = 0;
}

function tickerRequest() {
  http_request_ticker = getHTTPObject();
  http_request_ticker.onreadystatechange = tickerResponce;
  http_request_ticker.open("GET","http://www.simplyodds.com/data/wagerwidget/web/ticker.txt",true);
  http_request_ticker.setRequestHeader("Cache-Control", "no-cache");
  http_request_ticker.send(null);
}

function bannerRequest() {
  http_request_banner = getHTTPObject();
  http_request_banner.onreadystatechange = bannerResponce;
  http_request_banner.open("GET","http://www.simplyodds.com/data/wagerwidget/web/125data.txt",true);
  http_request_banner.setRequestHeader("Cache-Control", "no-cache");
  http_request_banner.send(null);
}

function buttonRequest() {
  http_request_button = getHTTPObject();
  http_request_button.onreadystatechange = buttonResponce;
  http_request_button.open("GET","http://www.simplyodds.com/data/wagerwidget/web/buttondata.txt",true);
  http_request_button.setRequestHeader("Cache-Control", "no-cache");
  http_request_button.send(null);
}

function tickerResponce() {
  if (http_request_ticker.readyState == 4) {
    if (http_request_ticker.status == 200) {
      if (connected == 0) {
        connected = 1;
      }
      var data = http_request_ticker.responseText.split('\r\n');
      setTicker(data[0]);
    } else {
      setTicker("Connection Problems - Check Internet Settings");
      connected = 0;
    }
    http_request_ticker.abort();
    http_request_ticker = null;
  }
}

function bannerResponce() {
  if (http_request_banner.readyState == 4) {
    if (http_request_banner.status == 200) {
      var preLoadImageObj = new Image();
      banners = http_request_banner.responseText.split('\r\n');
      for (var i = 0; i < banners.length; i++) {
        var ban = banners[i].split("|");
        if (ban[0] == '') {
          // Kill the last element which is blank
          banners.pop();
        } else {
          banners[i] = ban;
          preLoadImageObj.src = ban[0];
        }
      }
      curBannerNum = Math.floor(Math.random() * banners.length);
      setBanner();
    }
    http_request_banner.abort();
    http_request_banner = null;
  }
}

function buttonResponce() {
  if (http_request_button.readyState == 4) {
    if (http_request_button.status == 200) {
      var data = http_request_button.responseText.split('\r\n');
      pokerLink = data[0];
      casinoLink = data[1];
    }
    http_request_button.abort();
    http_request_button = null;
  }
}

function setBanner() {
  document.getElementById("banner").src = banners[curBannerNum][0];
  curBannerLink = banners[curBannerNum][1];
}

function setTicker(tickerContent) {
  document.getElementById("tickerContainer").style.width = tickerWidth;
  ticker = document.getElementById("tickerText");
  ticker.style.left = parseInt(tickerWidth, 0) + 8 + "px";
  ticker.innerHTML = tickerContent;
  var tickerTemp = document.getElementById("tickerTemp");
  setText(tickerTemp, tickerContent);
  tickerWidthActual = tickerTemp.offsetWidth;
  ticking = setInterval(runTicker, 75);
}

function runTicker() {
  if (parseInt(ticker.style.left, 0) > (tickerWidthActual * (-1) + 8)) {
    ticker.style.left = parseInt(ticker.style.left, 0) - 1 + "px";
  } else {
    ticker.style.left = parseInt(tickerWidth, 0) + 8 + "px";
  }
}

function rotateBanner() {
  if (banners) {
    curBannerNum++;
    if (curBannerNum >= banners.length) {
      curBannerNum = curBannerNum % banners.length;
    }
    setBanner();
  }
  changeDate();
  if (connected == 0) {
    phoneHome();
  }
  leageUpdateCount += 1;
  if (leageUpdateCount == 20) {
    changeLeague(league);
  }
  phoneHomeCount += 1;
  if (phoneHomeCount == 1440) {
    phoneHome();
  }
}

function link4Poker() {
  if (pokerLink) {
    openURL(pokerLink);
  }
}

function link4Casino() {
  if (casinoLink) {
    openURL(casinoLink);
  }
}

function link4Banner() {
  if (curBannerLink) {
    openURL(curBannerLink);
  }
}

function link4FiveDimes() {
  openURL("http://www.5dimes.com/index.asp?AffId=5D1791358");
}

function link4BetJam() {
  openURL("http://www.betjm.com/default.aspx?ZID=N913");
}

function link4BookMaker() {
  openURL("http://www.simplyodds.com/betcris_or_bookmaker.pl");
}

function changeLeague(newLeague) {
  if (newLeague != "NFL") {
    document.getElementById("nflButton").src = 'Images/nflbutton.png';
  }
  if (newLeague != "MLB") {
    document.getElementById("mlbButton").src = 'Images/mlbbutton.png';
  }
  if (newLeague != "NCF") {
    document.getElementById("ncaafButton").src ='Images/ncaafbutton.png';
  }
  if (newLeague != "NCB") {
    document.getElementById("ncaabButton").src = 'Images/ncaabbutton.png';
  }
  if (newLeague != "NBA") {
    document.getElementById("nbaButton").src = 'Images/nbabutton.png';
  }
  if (newLeague != "NHL") {
    document.getElementById("nhlButton").src ='Images/nhlbutton.png';
  }

  document.getElementById("splash").src = "Images/loading.png";
  
  league = newLeague;
  createCookie('leaguePref', league, 999);
  Lines = {};
  Lines[league] = {};
  clearItemList();
  var outOfSession = updateContent();
  if (outOfSession) {
    document.getElementById("splash").src = "Images/not_in_session.png";
  }
  leageUpdateCount = 0;
}

function changeBet(newBet) {
  bet = newBet;
  createCookie('betPref', bet, 999);
  
  if (newBet != "SP") {
    document.getElementById("spreadButton").src = 'Images/spreadbutton.png';
  }
  if (newBet != "ML") {
    document.getElementById("lineButton").src = 'Images/linebutton.png';
  }
  if (newBet != "OU") {
    document.getElementById("overUnderButton").src ='Images/overunderbutton.png';
  }
  
  if (!document.getElementById("splash").src.match('not_in_session.png')) {
    clearItemList();
    updateContentView();
  }
}

function changeOdds(newOdds) {
  odds = newOdds;
  createCookie('oddsPref', odds, 999);
  
  if (newOdds != "A") {
    document.getElementById("americButton").src = 'Images/americbutton.png';
  }
  if (newOdds != "F") {
    document.getElementById("fractionButton").src = 'Images/fractionbutton.png';
  }
  if (newOdds != "D") {
    document.getElementById("decimalButton").src ='Images/decimalbutton.png';
  }
  
  if (!document.getElementById("splash").src.match('not_in_session.png')) {
    clearItemList();
    updateContentView();
  }
}

function clearItemList() {
  var content = document.getElementById("result_content");
  for (var i = (content.childNodes.length - 1); i >= 0; i--) {
    content.removeChild(content.childNodes[i]);
  }
}

function updateContent() {
  if (feedRead()) {
    return 1;
  }
  updateContentView();
}

function feedRead() {
  var http_request_feed = getHTTPObject();
  http_request_feed.open("GET","http://www.simplyodds.com/data/wagerwidget/odds.xml",false);
  http_request_feed.setRequestHeader("Cache-Control", "no-cache");
  http_request_feed.send(null);
  if(http_request_feed.readyState == 4) {
    
    if((http_request_feed.status != 200) || (!http_request_feed.responseXML)) {
      return;
    } else {
      var xml = http_request_feed.responseXML.documentElement;
      
      var leagueNodes = xml.getElementsByTagName('League');
      for (var i = 0; i < leagueNodes.length; i++) {
        var leagueNode = leagueNodes[i];
        if (leagueNode.getAttribute('ID') == league) {
          if (leagueNode.getAttribute('OOS') == 1) {
            return 1;
          }
          var lineNodes = leagueNode.getElementsByTagName('Line');
          for (var j = 0; j < lineNodes.length; j++) {
            var lineNode = lineNodes[j];
            
            var id = lineNode.getAttribute('ID');
            var dt = lineNode.getAttribute('DateTime');
            var home = lineNode.getAttribute('Home');
            var visitor = lineNode.getAttribute('Visitor');
            
            var bookNodes = lineNode.getElementsByTagName('Book');
            for (var k = 0; k < bookNodes.length; k++) {
              var bookNode = bookNodes[k];
              
              var o, u, hs, vs;
              var oo = {};
              var uo = {};
              var hm = {};
              var vm = {};
              var hso = {};
              var vso = {};
              
              var b = bookNode.getAttribute('ID');
              
              var oddTypeNodes = bookNode.childNodes;
              for (var l = 0; l < oddTypeNodes.length; l++) {
                var oddTypeNode = oddTypeNodes[l];
                if (oddTypeNode.nodeType != 1) {continue;}
                
                var oddType = oddTypeNode.tagName;
                
                var teamOddNodes = oddTypeNode.childNodes;
                for (var m = 0; m < teamOddNodes.length; m++) {
                  var teamOddNode = teamOddNodes[m];
                  
                  if (teamOddNode.nodeType != 1) {continue;}
                  
                  var team = teamOddNode.tagName;
                  var v =  teamOddNode.getAttribute('V');
                  var a =  teamOddNode.getAttribute('A');
                  var d =  teamOddNode.getAttribute('D');
                  var f =  teamOddNode.getAttribute('F');
                  
                  if (oddType == 'ML') {
                    if (team == 'H') {
                      hm['A'] = a;
                      hm['F'] = f;
                      hm['D'] = d;
                    } else {
                      vm['A'] = a;
                      vm['F'] = f;
                      vm['D'] = d;
                    }
                  } else if (oddType == 'SP') {
                    if (team == 'H') {
                      hs = v;
                      hso['A'] = a;
                      hso['F'] = f;
                      hso['D'] = d;
                    } else {
                      vs = v;
                      vso['A'] = a;
                      vso['F'] = f;
                      vso['D'] = d;
                    }
                  } else if (oddType == 'OU') {
                    if (team == 'H') {
                      o = v;
                      oo['A'] = a;
                      oo['F'] = f;
                      oo['D'] = d;
                    } else {
                      u = v;
                      uo['A'] = a;
                      uo['F'] = f;
                      uo['D'] = d;
                    }
                  }
                }
              }
              addGame(b, id, home, visitor, hs, hso, vs, vso, o, oo, u, uo, hm, vm, dt);
            }
          }
        }
      }
    }
  }
}

function updateContentView() {
  var b = bolden;
  
  var y = 0;
  
  var w = 0;
  var z = 0;
  for (var ii in Lines[league]) {
    z++;
  }
  
  if ( safari3 || (mac && !firefox3) ) {
    w = 1;
  }
  
  for (var i in Lines[league]) {
    var teams = i.split("|");
    
    var div = document.createElement("div");
    
    var img = document.createElement("img");
    if (windows && !(safari3 || opera) && (z >= 8)) {
      img.src = "Images/content_trim.png";
    } else {
      img.src = "Images/content.png";
    }
    //img.width = "404";
    //img.height = "40";
    div.appendChild(img);
    var div2;
    
    // DT
    div2 = document.createElement("div");
    setText(div2, Lines[league][i]["DT"]);
    div2.style.position = 'absolute';
    div2.style.left = '3px';
    div2.style.top = (y + 1 + w) + "px";
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    // TEAMS
    div2 = document.createElement("div");
    setText(div2, Lines[league][i]["H"]);
    div2.style.position = 'absolute';
    div2.style.left = '3px';
    div2.style.top = (y + 13 + w) + "px";
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, Lines[league][i]["V"]);
    div2.style.position = 'absolute';
    div2.style.left = '3px';
    div2.style.top = (y + 26 + w) + "px";
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    var highHO;
    var highVO;
    
    if (bet == "ML") {
      var h1,h2,h3,v1,v2,v3;
      if (Lines[league][i]["5Dimes"]) {
        h1 = Lines[league][i]["5Dimes"][bet]["H"][odds];
        v1 = Lines[league][i]["5Dimes"][bet]["V"][odds];
      } else {
        h1 = "";
        v1 = "";
      }
      if (Lines[league][i]["BetJam"]) {
        h2 = Lines[league][i]["BetJam"][bet]["H"][odds];
        v2 = Lines[league][i]["BetJam"][bet]["V"][odds];
      } else {
        h2 = "";
        v2 = "";
      }
      if (Lines[league][i]["BookMaker"]) {
        h3 = Lines[league][i]["BookMaker"][bet]["H"][odds];
        v3 = Lines[league][i]["BookMaker"][bet]["V"][odds];
      } else {
        h3 = "";
        v3 = "";
      }
      //print("* " + h1 + " : " + h2 + " : " + h3);
      highHO = mlAnalyze(h1,h2,h3);
      //print("* " + v1 + " : " + v2 + " : " + v3);
      highVO = mlAnalyze(v1,v2,v3);
      //print(highHO + " : " + highVO);
    }
    
    var h,v,ho,vo;
    
    // 5Dimes
    if (Lines[league][i]["5Dimes"]) {
      h = Lines[league][i]["5Dimes"][bet]["H"]["V"];
      v = Lines[league][i]["5Dimes"][bet]["V"]["V"];
      ho = Lines[league][i]["5Dimes"][bet]["H"][odds];
      vo = Lines[league][i]["5Dimes"][bet]["V"][odds];
    } else {
      if (debug == "on") {
        h = '';
        v = '';
        ho = '';
        vo = '';
      } else {
        if (bet == "ML") {
          h = "";
          v = "";
        } else {
          h = "OFF";
          v = "OFF";
        }
        ho = "OFF";
        vo = "OFF";
      }
    }
    
    div2 = document.createElement("div");
    setText(div2, h);
    div2.style.position = 'absolute';
    div2.style.left = 100 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 13 + w) + "px";
    div2.style.textAlign = 'right';
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, v);
    div2.style.position = 'absolute';
    div2.style.left = 100 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 26 + w) + "px";
    div2.style.textAlign = 'right';
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, ho);
    div2.style.position = 'absolute';
    div2.style.left = 150 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 13 + w) + "px";
    div2.style.textAlign = 'right';
    if (ho == highHO) {
      div2.style.color = highlight;
      if (b) {
        div2.style.fontWeight = "bolder";
      } else {
        div2.style.fontWeight = "bold";
      }
    } else if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, vo);
    div2.style.position = 'absolute';
    div2.style.left = 150 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 26 + w) + "px";
    div2.style.textAlign = 'right';
    if (vo == highVO) {
      div2.style.color = highlight;
      if (b) {
        div2.style.fontWeight = "bolder";
      } else {
        div2.style.fontWeight = "bold";
      }
    } else if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    // BetJam
    if (Lines[league][i]["BetJam"]) {
      h = Lines[league][i]["BetJam"][bet]["H"]["V"];
      v = Lines[league][i]["BetJam"][bet]["V"]["V"];
      ho = Lines[league][i]["BetJam"][bet]["H"][odds];
      vo = Lines[league][i]["BetJam"][bet]["V"][odds];
    } else {
      if (debug == "on") {
        h = '';
        v = '';
        ho = '';
        vo = '';
      } else {
        if (bet == "ML") {
          h = "";
          v = "";
        } else {
          h = "OFF";
          v = "OFF";
        }
        ho = "OFF";
        vo = "OFF";
      }
    }
    
    div2 = document.createElement("div");
    setText(div2, h);
    div2.style.position = 'absolute';
    div2.style.left = 200 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 13 + w) + "px";
    div2.style.textAlign = 'right';
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, v);
    div2.style.position = 'absolute';
    div2.style.left = 200 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 26 + w) + "px";
    div2.style.textAlign = 'right';
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, ho);
    div2.style.position = 'absolute';
    div2.style.left = 250 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 13 + w) + "px";
    div2.style.textAlign = 'right';
    if (ho == highHO) {
      div2.style.color = highlight;
      if (b) {
        div2.style.fontWeight = "bolder";
      } else {
        div2.style.fontWeight = "bold";
      }
    } else if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, vo);
    div2.style.position = 'absolute';
    div2.style.left = 250 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 26 + w) + "px";
    div2.style.textAlign = 'right';
    if (vo == highVO) {
      div2.style.color = highlight;
      if (b) {
        div2.style.fontWeight = "bolder";
      } else {
        div2.style.fontWeight = "bold";
      }
    } else if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    // BookMaker
    if (Lines[league][i]["BookMaker"]) {
      h = Lines[league][i]["BookMaker"][bet]["H"]["V"];
      v = Lines[league][i]["BookMaker"][bet]["V"]["V"];
      ho = Lines[league][i]["BookMaker"][bet]["H"][odds];
      vo = Lines[league][i]["BookMaker"][bet]["V"][odds];
    } else {
      if (debug == "on") {
        h = '';
        v = '';
        ho = '';
        vo = '';
      } else {
        if (bet == "ML") {
          h = "";
          v = "";
        } else {
          h = "OFF";
          v = "OFF";
        }
        ho = "OFF";
        vo = "OFF";
      }
    }
    
    div2 = document.createElement("div");
    setText(div2, h);
    div2.style.position = 'absolute';
    div2.style.left = 300 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 13 + w) + "px";
    div2.style.textAlign = 'right';
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, v);
    div2.style.position = 'absolute';
    div2.style.left = 300 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 26 + w) + "px";
    div2.style.textAlign = 'right';
    if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, ho);
    div2.style.position = 'absolute';
    div2.style.left = 350 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 13 + w) + "px";
    div2.style.textAlign = 'right';
    if (ho == highHO) {
      div2.style.color = highlight;
      if (b) {
        div2.style.fontWeight = "bolder";
      } else {
        div2.style.fontWeight = "bold";
      }
    } else if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    div2 = document.createElement("div");
    setText(div2, vo);
    div2.style.position = 'absolute';
    div2.style.left = 350 + 'px';
    div2.style.width = 50 + 'px';
    div2.style.top = (y + 26 + w) + "px";
    div2.style.textAlign = 'right';
    if (vo == highVO) {
      div2.style.color = highlight;
      if (b) {
        div2.style.fontWeight = "bolder";
      } else {
        div2.style.fontWeight = "bold";
      }
    } else if (b) {
      div2.style.fontWeight = "bold";
    }
    div.appendChild(div2);
    
    document.getElementById("result_content").appendChild(div);
    
    y += 40;
  }
  document.getElementById("splash").src = "Images/blank.png";
}

function mlAnalyze(a, b, c) {
  if (a == "OFF" || a == "") {
    a = "-9999";
  }
  if (b == "OFF" || b == "") {
    b = "-9999";
  }
  if (c == "OFF" || c == "") {
    c = "-9999";
  }
  
  if (a == b && b == c) {
    return -9999;
  }
  
  if ((a == b || b == c || a == c) && (a == -9999 || b == -9999 || c == -9999)) {
    return -9999;
  }
  
  var aa,bb,cc;
  
  if (a.match(/\//)) {
    var aVals = a.split('/');
    aa = aVals[0] / aVals[1];
  } else {
    aa = a;
  }
  if (b.match(/\//)) {
    var bVals = b.split('/');
    bb = bVals[0] / bVals[1];
  } else {
    bb = b;
  }
  if (c.match(/\//)) {
    var cVals = c.split('/');
    cc = cVals[0] / cVals[1];
  } else {
    cc = c;
  }
  
  //print (aa + " : " + bb + " : " + cc);
  
  if (Number(aa) >= Number(bb) && Number(aa) >= Number(cc)) {
    return a;
  } else if (Number(bb) >= Number(cc)) {
    return b;
  } else {
    return c;
  }
}

function addGame(p, id, h, v, hs, hso, vs, vso, o, oo, u, uo, hm, vm, dt) {
  var g = id;
  
  if (!Lines[league][g]) {
    Lines[league][g] = new Object;
    Lines[league][g]["DT"] = dt;
    Lines[league][g]["H"] = h;
    Lines[league][g]["V"] = v;
  }
  
  Lines[league][g][p] = new Object;
  Lines[league][g][p]["SP"] = new Object;
  Lines[league][g][p]["SP"]["H"] = new Object;
  Lines[league][g][p]["SP"]["V"] = new Object;
  Lines[league][g][p]["OU"] = new Object;
  Lines[league][g][p]["OU"]["H"] = new Object;
  Lines[league][g][p]["OU"]["V"] = new Object;
  Lines[league][g][p]["ML"] = new Object;
  Lines[league][g][p]["ML"]["H"] = new Object;
  Lines[league][g][p]["ML"]["V"] = new Object;
  
  Lines[league][g][p]["SP"]["H"]["V"] = hs;
  Lines[league][g][p]["SP"]["H"]["A"] = hso["A"];
  Lines[league][g][p]["SP"]["H"]["F"] = hso["F"];
  Lines[league][g][p]["SP"]["H"]["D"] = hso["D"];
  
  Lines[league][g][p]["SP"]["V"]["V"] = vs;
  Lines[league][g][p]["SP"]["V"]["A"] = vso["A"];
  Lines[league][g][p]["SP"]["V"]["F"] = vso["F"];
  Lines[league][g][p]["SP"]["V"]["D"] = vso["D"];
  
  Lines[league][g][p]["OU"]["H"]["V"] = o;
  Lines[league][g][p]["OU"]["H"]["A"] = oo["A"];
  Lines[league][g][p]["OU"]["H"]["F"] = oo["F"];
  Lines[league][g][p]["OU"]["H"]["D"] = oo["D"];
  
  Lines[league][g][p]["OU"]["V"]["V"] = u;
  Lines[league][g][p]["OU"]["V"]["A"] = uo["A"];
  Lines[league][g][p]["OU"]["V"]["F"] = uo["F"];
  Lines[league][g][p]["OU"]["V"]["D"] = uo["D"];
  
  Lines[league][g][p]["ML"]["H"]["V"] = "";
  Lines[league][g][p]["ML"]["H"]["A"] = hm["A"];
  Lines[league][g][p]["ML"]["H"]["F"] = hm["F"];
  Lines[league][g][p]["ML"]["H"]["D"] = hm["D"];
  
  Lines[league][g][p]["ML"]["V"]["V"] = "";
  Lines[league][g][p]["ML"]["V"]["A"] = vm["A"];
  Lines[league][g][p]["ML"]["V"]["F"] = vm["F"];
  Lines[league][g][p]["ML"]["V"]["D"] = vm["D"];
}

function createCookie(name,value,days) {
  var date, expires;
  if (days) {
    date = new Date();
    date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
    expires = "; expires=" + date.toGMTString();
  }
  else {
    expires = "";
  }
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for (var i = 0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ' ) { c = c.substring(1, c.length); }
    if (c.indexOf(nameEQ) == 0) {return c.substring(nameEQ.length, c.length);}
  }
  return null;
}

function setText(elm, text) {
  if (hasInnerText) {
    elm.innerText = text;
  } else {
    elm.textContent = text;
  }
}

function openURL(url) {
  window.open(url);
}

function getHTTPObject() {
  var xmlhttp = false;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
  }
  
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
    } catch (ee) {
      xmlhttp = false;
    }
  }
  return xmlhttp;
}
