if(gameReportClickToStart==undefined) var gameReportClickToStart = false;
if(useOldGameIconMethod==undefined)   var useOldGameIconMethod = false;


var gameReportWeeklyResults = new Array();
var gameReportLiveScoring   = new Array();
if(gameReportTitle3==undefined) var gameReportTitle3 = "In Progress";
if(gameReportDecimals==undefined) var gameReportDecimals = 0;

function getGameReportYTP(starterString) {
   var length = parseInt((starterString.length)/5,10);
   var seconds = 0;
   var yetToPlay = "";
   for (var j=0; j<length; j++) {
    var id = starterString.substr(j*5,4);
    var nflTeamSeconds = parseInt(habGlobalNFLGameSeconds[playerDatabase['pid_' + id].team],10);
    if (nflTeamSeconds>0) {
     var name = formatName(playerDatabase['pid_' + id].name);
     var team = playerDatabase['pid_' + id].team;
     var pos  = playerDatabase['pid_' + id].position;
     yetToPlay +=  "(" + team  + "–" + pos + ")&nbsp;" + name + "<br />";
    }
   }
   if(yetToPlay=="") yetToPlay = "&nbsp;";
   return yetToPlay;
}

function doGameReportTables() {
   var htmlCode = "<table align='center' cellspacing='0' class='homepagemodule report' id='gameReportOuterTable'><caption><span>" + gameReportTitle + "</span></caption><tr>";

   var inProgressCheck = new Array();
   for(var i=0; i< gameReportLiveScoring.length; i++) {
    inProgressCheck[i] = true;
   }
   var gameOverCheck = new Array();
   for(var i=0; i<gameReportLiveScoring.length; i++) {
    var roadYTP     = getGameReportYTP(gameReportWeeklyResults[i]['road'][2]);
    var homeYTP     = getGameReportYTP(gameReportWeeklyResults[i]['home'][2]);
    if(roadYTP=="&nbsp;"&&homeYTP=="&nbsp;") gameOverCheck[i]=true; else gameOverCheck[i]=false;
   }

   //DO "MATCHUP ANALYSIS"   
   htmlTable = "";
   rowCount = 1;
   for(var i=0; i< gameReportLiveScoring.length; i++) {
    var roadScore = parseFloat(gameReportLiveScoring[i]['road'][1],10); 
    var homeScore = parseFloat(gameReportLiveScoring[i]['home'][1],10); 
    var roadTime  = parseInt(gameReportLiveScoring[i]['road'][2],10); 
    var homeTime  = parseInt(gameReportLiveScoring[i]['home'][2],10); 
    if(roadScore==0&&homeScore==0&&!gameOverCheck[i]) {
     var roadFID     = gameReportLiveScoring[i]['road'][0];
     var homeFID     = gameReportLiveScoring[i]['home'][0];
     if(roadFID!="BYE"&&homeFID!="BYE") {
      inProgressCheck[i] = false;
      var roadName    = getHabTeamName(hideGameReportTeamName,useGameReportNickNames,franchiseNickNames,roadFID);
      var homeName    = getHabTeamName(hideGameReportTeamName,useGameReportNickNames,franchiseNickNames,homeFID);
      var altRoadName = getHabTeamName(false,false,franchiseNickNames,roadFID);
      var altHomeName = getHabTeamName(false,false,franchiseNickNames,homeFID);
      var roadIcon    = getHabTeamIcon(gameReportDefaultIcon,gameReportDefaultLogo,gameReportIconURL,gameReportIconExt,"gameReportIcon",roadFID,useOldGameIconMethod);
      var homeIcon    = getHabTeamIcon(gameReportDefaultIcon,gameReportDefaultLogo,gameReportIconURL,gameReportIconExt,"gameReportIcon",homeFID,useOldGameIconMethod);
      var roadLink    = "<a href='" + baseURLDynamic + "/" + year + "/options?L=" + league_id + "&F=" + roadFID + "&O=07' target='franchisepage' border='0' title='" + altRoadName + "' style='text-decoration: none;'>";
      var homeLink    = "<a href='" + baseURLDynamic + "/" + year + "/options?L=" + league_id + "&F=" + homeFID + "&O=07' target='franchisepage' border='0' title='" + altHomeName + "' style='text-decoration: none;'>";
      var roadYTP     = getGameReportYTP(gameReportWeeklyResults[i]['road'][2]);
      var homeYTP     = getGameReportYTP(gameReportWeeklyResults[i]['home'][2]);
      if(rowCount%2) {
       htmlTable += "<tr class='oddtablerow'><td class='gameReportTeam'> "  + roadLink + roadIcon + roadName + "</a></td><td class='gameReportScore'> " + roadScore.toFixed(gameReportDecimals) + " </td><td class='gameReportAtSymbol'>&nbsp; vs. </td><td class='gameReportScore'> " + homeScore.toFixed(gameReportDecimals) + "</td><td class='gameReportTeam'> " + homeLink + homeIcon + homeName + "</a></td></tr>\n";
       htmlTable += "<tr class='oddtablerow'><td class='gameReportYTP'>"   + roadYTP + "</a><td colspan='3'>&nbsp;</td><td class='gameReportYTP'>" + homeYTP + "</td></tr>\n";
      } else {
       htmlTable += "<tr class='eventablerow'><td class='gameReportTeam'> " + roadLink + roadIcon + roadName + "</a></td><td class='gameReportScore'> " + roadScore.toFixed(gameReportDecimals) + " </td><td class='gameReportAtSymbol'>&nbsp; vs. </td><td class='gameReportScore'> " + homeScore.toFixed(gameReportDecimals) + "</td><td class='gameReportTeam'> " + homeLink + homeIcon + homeName + "</a></td></tr>\n";
       htmlTable += "<tr class='eventablerow'><td class='gameReportYTP'>"   + roadYTP + "</a><td colspan='3'>&nbsp;</td><td class='gameReportYTP'>" + homeYTP + "</td></tr>\n";
      }
      rowCount++;     
     } //END IF
    }  //END IF
   }   //END LOOP
   if(htmlTable!="") htmlCode += "<th colspan='5' id='gameReportMatchups'>" + gameReportTitle1 + "</th>\n" + htmlTable + "\n";
 
   //DO "FINAL SCORES"
   var htmlTable = "";
   var rowCount = 1;
   for(var i=0; i<gameReportLiveScoring.length; i++) {
    if((gameReportLiveScoring[i]['road'][2]=="0"&&gameReportLiveScoring[i]['home'][2]=="0"&&roadScore!=0&&homeScore!=0)||gameOverCheck[i]) { 
     var roadFID     = gameReportLiveScoring[i]['road'][0];
     var homeFID     = gameReportLiveScoring[i]['home'][0];
     if(roadFID!="BYE"&&homeFID!="BYE") {
      inProgressCheck[i] = false;
      var roadName    = getHabTeamName(hideGameReportTeamName,useGameReportNickNames,franchiseNickNames,roadFID);
      var homeName    = getHabTeamName(hideGameReportTeamName,useGameReportNickNames,franchiseNickNames,homeFID);
      var altRoadName = getHabTeamName(false,false,franchiseNickNames,roadFID);
      var altHomeName = getHabTeamName(false,false,franchiseNickNames,homeFID);
      var roadIcon    = getHabTeamIcon(gameReportDefaultIcon,gameReportDefaultLogo,gameReportIconURL,gameReportIconExt,"gameReportIcon",roadFID,useOldGameIconMethod);
      var homeIcon    = getHabTeamIcon(gameReportDefaultIcon,gameReportDefaultLogo,gameReportIconURL,gameReportIconExt,"gameReportIcon",homeFID,useOldGameIconMethod);
      var roadLink    = "<a href='" + baseURLDynamic + "/" + year + "/options?L=" + league_id + "&F=" + roadFID + "&O=07' target='franchisepage' border='0' title='" + altRoadName + "' style='text-decoration: none;'>";
      var homeLink    = "<a href='" + baseURLDynamic + "/" + year + "/options?L=" + league_id + "&F=" + homeFID + "&O=07' target='franchisepage' border='0' title='" + altHomeName + "' style='text-decoration: none;'>";
      var roadScore   = parseFloat(gameReportLiveScoring[i]['road'][1],10);
      var homeScore   = parseFloat(gameReportLiveScoring[i]['home'][1],10);
      if(rowCount%2) 
       htmlTable += "<tr class='oddtablerow'><td class='gameReportTeam'> "  + roadLink + roadIcon + roadName + "</a></td><td class='gameReportScore'> " + roadScore.toFixed(gameReportDecimals) + " </td><td class='gameReportAtSymbol'>&nbsp; vs. </td><td class='gameReportScore'> " + homeScore.toFixed(gameReportDecimals) + "</td><td class='gameReportTeam'> " + homeLink + homeIcon + homeName + "</a></td></tr>\n";
      else
       htmlTable += "<tr class='eventablerow'><td class='gameReportTeam'> " + roadLink + roadIcon + roadName + "</a></td><td class='gameReportScore'> " + roadScore.toFixed(gameReportDecimals) + " </td><td class='gameReportAtSymbol'>&nbsp; vs. </td><td class='gameReportScore'> " + homeScore.toFixed(gameReportDecimals) + "</td><td class='gameReportTeam'> " + homeLink + homeIcon + homeName + "</a></td></tr>\n";
      rowCount++;     
     } //END IF
    }  //END IF
   }   //END LOOP
   if(htmlTable!="") htmlCode += "<th colspan='5' id='gameReportFinals'>" + gameReportTitle2 + "</th>\n" + htmlTable + "\n";

   //DO "IN PROGRESS"   
   htmlTable = "";
   rowCount = 1;
   for(var i=0; i< gameReportLiveScoring.length; i++) {
    var roadScore = parseFloat(gameReportLiveScoring[i]['road'][1],10); 
    var homeScore = parseFloat(gameReportLiveScoring[i]['home'][1],10); 
    var roadTime  = parseInt(gameReportLiveScoring[i]['road'][2],10); 
    var homeTime  = parseInt(gameReportLiveScoring[i]['home'][2],10); 
    if(inProgressCheck[i]&&!gameOverCheck[i]) {
     var roadFID     = gameReportLiveScoring[i]['road'][0];
     var homeFID     = gameReportLiveScoring[i]['home'][0];
     if(roadFID!="BYE"&&homeFID!="BYE") { 
      var roadName    = getHabTeamName(hideGameReportTeamName,useGameReportNickNames,franchiseNickNames,roadFID);
      var homeName    = getHabTeamName(hideGameReportTeamName,useGameReportNickNames,franchiseNickNames,homeFID);
      var altRoadName = getHabTeamName(false,false,franchiseNickNames,roadFID);
      var altHomeName = getHabTeamName(false,false,franchiseNickNames,homeFID);
      var roadIcon    = getHabTeamIcon(gameReportDefaultIcon,gameReportDefaultLogo,gameReportIconURL,gameReportIconExt,"gameReportIcon",roadFID,useOldGameIconMethod);
      var homeIcon    = getHabTeamIcon(gameReportDefaultIcon,gameReportDefaultLogo,gameReportIconURL,gameReportIconExt,"gameReportIcon",homeFID,useOldGameIconMethod);
      var roadLink    = "<a href='" + baseURLDynamic + "/" + year + "/options?L=" + league_id + "&F=" + roadFID + "&O=07' target='franchisepage' border='0' title='" + altRoadName + "' style='text-decoration: none;'>";
      var homeLink    = "<a href='" + baseURLDynamic + "/" + year + "/options?L=" + league_id + "&F=" + homeFID + "&O=07' target='franchisepage' border='0' title='" + altHomeName + "' style='text-decoration: none;'>";
      var roadYTP     = getGameReportYTP(gameReportWeeklyResults[i]['road'][2]);
      var homeYTP     = getGameReportYTP(gameReportWeeklyResults[i]['home'][2]);
      if(rowCount%2) {
       htmlTable += "<tr class='oddtablerow'><td class='gameReportTeam'> "  + roadLink + roadIcon + roadName + "</a></td><td class='gameReportScore'> " + roadScore.toFixed(gameReportDecimals) + " </td><td class='gameReportAtSymbol'>&nbsp; vs. </td><td class='gameReportScore'> " + homeScore.toFixed(gameReportDecimals) + "</td><td class='gameReportTeam'> " + homeLink + homeIcon + homeName + "</a></td></tr>\n";
       htmlTable += "<tr class='oddtablerow'><td class='gameReportYTP'>"   + roadYTP + "</a><td colspan='3'>&nbsp;</td><td class='gameReportYTP'>" + homeYTP + "</td></tr>\n";
      } else {
       htmlTable += "<tr class='eventablerow'><td class='gameReportTeam'> " + roadLink + roadIcon + roadName + "</a></td><td class='gameReportScore'> " + roadScore.toFixed(gameReportDecimals) + " </td><td class='gameReportAtSymbol'>&nbsp; vs. </td><td class='gameReportScore'> " + homeScore.toFixed(gameReportDecimals) + "</td><td class='gameReportTeam'> " + homeLink + homeIcon + homeName + "</a></td></tr>\n";
       htmlTable += "<tr class='eventablerow'><td class='gameReportYTP'>"   + roadYTP + "</a><td colspan='3'>&nbsp;</td><td class='gameReportYTP'>" + homeYTP + "</td></tr>\n";
      }
      rowCount++;     
     } //END IF
    }  //END IF
   }   //END IF
   if(htmlTable!="") htmlCode += "<th colspan='5' id='gameReportInProgress'>" + gameReportTitle3 + "</th>\n" + htmlTable + "\n";

   htmlCode += "</tr></table>\n";
   document.getElementById("gameReport").innerHTML = htmlCode;
}


function doGameReport() {
  if(completedWeek==liveScoringWeek) var thisWeek = liveScoringWeek + 1; else thisWeek = liveScoringWeek;
  document.getElementById("gameReportIframe").innerHTML = "<iframe src='" + habBaseURL + "/" + year + "/live_scoring_summary?L=" + league_id +  "&App=gr' style='width: 0; height: 0; border: 0px;'></iframe>";
  document.getElementById("gameReportIframe").innerHTML = "";

  habXMLAttempt = 0;
  habXMLSuccess = false;
  while (!habXMLSuccess&&habXMLAttempt<2) { // Two attempts at grabbing XML data
   gameReportWeeklyResults = makeSyncHttpRequest(habBaseURL+"/"+year+"/export?TYPE=weeklyResults&L="+league_id+"&W="+thisWeek+"&rand=" + Math.random(), 'parseHabWeeklyResultsXML','weeklyResults',true);
  }

  habXMLAttempt = 0;
  habXMLSuccess = false;
  while (!habXMLSuccess&&habXMLAttempt<2) { // Two attempts at grabbing XML data
   gameReportLiveScoring   = makeSyncHttpRequest(habBaseURL+"/"+year+"/export?TYPE=liveScoring&L="+league_id+"&W="+thisWeek+"&rand=" + Math.random(), 'parseHabLiveScoringXML','liveScoring',true);
  }

  makeSyncHttpRequest(habBaseURL+"/"+year+"/export?TYPE=nflSchedule&W="+thisWeek+"&rand=" + Math.random(), 'parseHabNFLScheduleXML','nflSchedule',false);
  doGameReportTables();
}


function doDisplayCheck(theseDays) { // Check for current day of week and whether to display; 0 is Sunday
  var rightNow = new Date(currentServerTime*1000);
  var today = rightNow.getDay();
  if(theseDays.indexOf(today)!=-1) return true; else return false;
}

if(doDisplayCheck(gameReportDayDisplay)) {
 if(!gameReportClickToStart) {
  document.write("<div id='gameReport'></div>");
  document.write("<div id='gameReportIframe'></div>");
  setTimeout("doGameReport()",500); 
 } else {
  document.write("<div id='gameReport'><center><a href='#1' onclick='doGameReport();' id='gameReportClick'><span class='habClickToStart'>Click to Display Game Report</span></a><br /><br /></center></div>");
  document.write("<div id='gameReportIframe'></div>");
 }
}