﻿// JScript File
var strBooks;
var currentLeague = 0;  

var today = new Date();		
var curr_month = today.getMonth();
curr_month++;


var scores_secs; 
var odds_secs;
var odds_secs = 0;
var timerID = null;
var timerRunning = false;
var delay = 1000;
var eventsList = "";
var mySportIDs=new Array("1","2","3", "4", "5", "6", "7","8", "9", "10");
var mySportNames=new Array("nfl","ncaaf","cfl", "arena", "mlb", "nhl", "ncaab","wnba", "nba", "mls");
var selectedOddTypeArray=new Array("spread","spread","spread", "spread", "ml", "ml", "spread","spread", "spread", "spread");


var selectedOddType="";



var eventListArray;
var arraySpreadObjects;
var arraySpreadFirstObjects;
var arraySpreadSecondObjects;
var arrayMLObjects;  
var arrayBookObjects;
var arrayBookNoVegasObjects;
var timestring;  
 var hiddenLeague_ID;  
 var scoresCheckInterval = 10;
    var myTab; 
    var FirstTab; 
    var SecondTab; 
    var spreadTab; 
    var mlTab; 

function setLeagueGames(){
    //writeHistory('setLeagueGames Start' + new Date());
            rejuvinate();
             //set the default tab class
            setPreTabs();         
            window.setTimeout("InitializePage()", 1000);           

}

function setLeagueGamesWithInterval( interval ){
    //writeHistory('setLeagueGames Start' + new Date());
            scoresCheckInterval = interval;
            rejuvinate();
             //set the default tab class
            setPreTabs();         
            window.setTimeout("InitializePage()", 1000);           

}

function rejuvinate(){
        var hiddenLeagueEvents = document.getElementById("hiddenLeagueGames");
         if (hiddenLeagueEvents != null){
             eventsList = hiddenLeagueEvents.value;
            
             eventListArray = eventsList.split(".");
             
             
             
             arraySpreadObjects = new Array(eventListArray.length-1); 
             arraySpreadFirstObjects = new Array(eventListArray.length-1);
             arraySpreadSecondObjects = new Array(eventListArray.length-1);
             arrayMLObjects = new Array(eventListArray.length-1);
             arrayBookObjects = new Array(eventListArray.length-1); 
             arrayBookNoVegasObjects = new Array(eventListArray.length-1);  
 
             
             
             //writeHistory("preArray: "  + new Date());
             
             for(var t=0;t<eventListArray.length-1;t++){
                arraySpreadObjects[t] = document.getElementById("divSpread_"+eventListArray[t]);
                arrayMLObjects[t] = document.getElementById("divML_"+eventListArray[t]);
                arraySpreadFirstObjects[t] = document.getElementById("divSpreadFirst_"+eventListArray[t]);
                arraySpreadSecondObjects[t] = document.getElementById("divSpreadSecond_"+eventListArray[t]);
                arrayBookObjects[t] = document.getElementById("divBook_"+eventListArray[t]); 
                arrayBookNoVegasObjects[t] = document.getElementById("divBookNoVegas_"+eventListArray[t]);  
                
            }
             
             //writeHistory("postArray: "  + new Date());
         
         }
           //writeHistory('setLeagueGames end' + new Date());
           
           hiddenLeague_ID = document.getElementById("hiddenLeagueID");
           if (hiddenLeague_ID != null){ 
                FirstTab = document.getElementById("1st_" + hiddenLeague_ID.value);
                SecondTab = document.getElementById("2nd_" + hiddenLeague_ID.value);
                spreadTab = document.getElementById("spread_" + hiddenLeague_ID.value);
                mlTab = document.getElementById("ml_" + hiddenLeague_ID.value);
            
            }
            
            if (selectedOddType == ""){
            	var hiddenID = document.getElementById("hiddenLeagueID");
		if (hiddenID != null){
			selectedOddType = selectedOddTypeArray[hiddenID.value];
			
		}
	     }
}

function InitializePage(){ 
    InitializeTimer();
}

function InitializeTimer()
{
	// Set the length of the timer, in seconds
	scores_secs = scoresCheckInterval;	
	StartTheTimer();
}

function StartTheTimer()
{

    if (scores_secs==0)
    {
	    //StopTheClock();
	    // Here's where you put something useful that's
	    // supposed to happen after the allotted time.
	    // For example, you could display a message:	 
	  
	    scores_secs = scoresCheckInterval;
	    odds_secs ++;	    
	    if (odds_secs > 12) //should update every 2 minutes
	    {
	        var today = new Date();		
	        timestring =  today.getHours() +"."+ today.getMinutes() +"."+ today.getSeconds();
	        //writeHistory( "called UpdateOddsboard: " + timestring );
	        odds_secs = 0;
	        UpdateOddsboard();
	        
	    }else{
	        //var today = new Date();		
	        //timestring =  today.getHours() +"."+ today.getMinutes() +"."+ today.getSeconds();	      
	        //UpdateScoresAndStatus();	    
	    }
	    
	    //timerRunning = true;
	    //writeHistory("delay" + delay);
	    //timerID = self.setTimeout("StartTheTimer()", delay);
    }
    else
    {
	    //remove this line for prod.  it displays the timer in the status bar
	    //self.status = secs;
	    scores_secs = scores_secs - 1;
	    //timerRunning = true;
	    //timerID = self.setTimeout("StartTheTimer()", delay);
    }  
}





function UpdateOddsboard(){	
 
    var leagueID = document.getElementById("hiddenLeagueID").value;
	AjaxUpdates.UpdateLeague('true', leagueID, selectedOddType, UpdateOddsContainer_callback);	
	

}


function UpdateOddsContainer_callback(response){
 //writeHistory("S-UpdateOddsContainer_callback");
////writeHistory('5' + new Date());
var today = new Date();		
	timestring =  today.getHours() +"."+ today.getMinutes() +"."+ today.getSeconds();
    //writeHistory( "received callback: " + timestring );

     try{
    
               //check for HTTP ERROR Status
                if (response.request.status < 400){
                     if (response != null){ 
                         var oddscontainerresponse = response.value;                         
                         var OddsHTML = oddscontainerresponse.OddsContainerHTML;                     
                         //chop off the container DIV
                         OddsHTML = OddsHTML.substring(OddsHTML.indexOf('<h3>'), (OddsHTML.length - 6));                         
                         
                         var sbDiv = document.getElementById("CustomOddsContainer");                       
                         
                         if (sbDiv != null){                        
                              sbDiv.innerHTML = OddsHTML;                            
                         }                      
                          
                         rejuvinate();                        
                         league = document.getElementById("hiddenLeagueID").value
                         SetTabClass(league, selectedOddType);                                
                            
                      }
                 }
       }catch(err){    
         var sbDiv = document.getElementById("CustomOddsContainer");     
         if (sbDiv != null){
              sbDiv.innerHTML = "Error: Please contact system administrator";
         }
      }
    
} 




function UpdateScoresAndStatus(){
    //writeHistory("S-UpdateScoresAndStatus");
    ////writeHistory( "Games" + GetCookieGames() );
     var today = new Date();		
	timestring =  today.getHours() +"."+ today.getMinutes() +"."+ today.getSeconds();
	if (eventsList == null){
	     hiddenLeagueEvents = document.getElementById("hiddenLeagueGames");
         if (hiddenLeagueEvents != null){
             eventsList = hiddenLeagueEvents.value;
              
             eventListArray = eventsList.split(".")
         }
	}
	
    AjaxUpdates.UpdateRegularScoreboard(eventsList, 'true', timestring, UpdateScoresContainer_callback);	
    //writeHistory("UpdateScoresAndStatus");
}

function UpdateScoresContainer_callback(response){
 //writeHistory("S-UpdateScoresContainer_callback");
     try{
         //check for HTTP ERROR Status
         if (response.request.status < 400){

             var oddscontainerresponse = response.value;     
     
            if (oddscontainerresponse.OddsBoardResponseList != null){ 
                      var OddsboardResponseList = oddscontainerresponse.OddsBoardResponseList;
                      
                      for (var ii=0; ii<OddsboardResponseList.length; ii++)
                      {
                         //do not reload the page, only the specific game 
                              var GameResponseList = OddsboardResponseList[ii].GameResponseList;
                            
                              for (var i=0; i<GameResponseList.length; i++)
                              { 
                                    var EventID = GameResponseList[i].EventID;   
                                    var LeagueID = GameResponseList[i].LeagueID;                                  
                                    var OldHomeScore 
                                    var OldVisitScore 
                                    var NewHomeScore
                                    var NewVisitScore
                                    var NewScoreStatus
                                    var OldScoreStatus 
                                    
                                    var StatusRowID = "StatusRow_" + LeagueID +"_"+GameResponseList[i].EventID; 
                                    var ScoreRowID = "ScoreRow_" + LeagueID +"_"+GameResponseList[i].EventID; 
                                
                                    var statusDiv = document.getElementById(StatusRowID);                            
                                    if (statusDiv != null)
                                    {
                                        statusDiv = GameResponseList[i].StatusHTML;  
                                    }     
                                    
                                    var scoreDiv = document.getElementById(ScoreRowID);  
                                      if (scoreDiv != null)
                                    {
                                        scoreDiv = GameResponseList[i].ScoreHTML;  
                                    } 
                                    
                                }                       
                              
                           } 
               }
          }
             
       }catch(err){    
         var sbDiv = document.getElementById("CustomOddsContainer");     
         if (sbDiv != null){
              sbDiv.innerHTML = "Error: Please contact system administrator";
         }
      }
      //writeHistory("UpdateScoresContainer_callback");
       
}


  




function GetOddsByType(type, league){
var leagueID;                 
        
        selectedOddType = type;        
            
             if (league == null){
                  league = document.getElementById("hiddenLeagueID").value;                
             }
       
                var _hasVegas;

             _hasVegas = true;
             if (((league == '3') || (league == '4') || (league == '1') || (league == '2') || (league == '7') || (league == '8') ||(league == '9')) && (! (type == 'spread')))
                     _hasVegas = false;                     
                
             for (var i=0;i<eventListArray.length-1; i++){
                var divGame;
                
                if  (league != null){
                 ////writeHistory('9' + new Date());
                
                    if (eventListArray[i].indexOf(league + "_") != -1){
                            clearOddsDivs( i);
                       
                         if (arraySpreadObjects[i] != null ) {
                           if ( type == "spread"){
                             arraySpreadObjects[i].className = "visible";  
                             //arraySpreadObjects[i].style.display = "block";  
                             SetTabClass(league, 'spread');                     
                           } else {
                             //arraySpreadObjects[i].className = "hidden";                      
                           }    
                         }                     
                       
                         if (arrayMLObjects[i] != null){
                             
                            if ( type == "ml"){
                             arrayMLObjects[i].className = "visible"; 
                              //arrayMLObjects[i].style.display = "block";       
                             SetTabClass(league, 'ml');                     
                           } else {
                             //arrayMLObjects[i].className = "hidden";                 
                           }    
                         }                      
                        
                         if (arraySpreadFirstObjects[i] != null){
                           if ( type == "1st"){
                             arraySpreadFirstObjects[i].className = "visible"; 
                             // arraySpreadFirstObjects[i].style.display = "block";          
                             SetTabClass(league, '1st');                     
                           } else {
                             //arraySpreadFirstObjects[i].className= "hidden";                      
                           }    
                         }
                        
                         if (arraySpreadSecondObjects[i] != null){
                            
                           if ( type == "2nd"){
                             arraySpreadSecondObjects[i].className = "visible";    
                             // arraySpreadSecondObjects[i].style.display = "block";      
                             SetTabClass(league, '2nd');                     
                           } else {
                              //arraySpreadSecondObjects[i].className = "hidden";                    
                           }    
                         }
                         
                         if (arrayBookObjects[i] != null ) {
                         
                           if ( _hasVegas == true){
                             arrayBookObjects[i].className = "visible";  
                           } else{
                              arrayBookObjects[i].className = "hidden";
                              }
                         }                     
                       
                         if (arrayBookNoVegasObjects[i] != null ) {
                         
                           if ( _hasVegas == false){
                             arrayBookNoVegasObjects[i].className = "visible";  
                           }else{
                              arrayBookNoVegasObjects[i].className = "hidden"; 
                              }
                         }                     
                                                  
                      }
                     
                
                }else{                    
                 
                }
             }
          
           
}


function clearOddsDivs( t ){
 //writeHistory("S-clearOddsDivs");
    
    divGame = arraySpreadObjects[t];
     if (divGame != null){
         divGame.className = "hidden";  
         //divGame.style.display = "none";                     
     }
     
     divGame = arrayMLObjects[t];
     if (divGame != null){
         divGame.className = "hidden";
         //divGame.style.display = "none"; 
     }
     
     divGame = arraySpreadFirstObjects[t];
     if (divGame != null){
         divGame.className = "hidden";
         //divGame.style.display = "none"; 
     }
     divGame = arraySpreadSecondObjects[t];
     if (divGame != null){
         divGame.className = "hidden";
         //divGame.style.display = "none"; 
     }
      //writeHistory("clearOddsDivs"); 
}





function SetTabClass( league, type ) 
{
   
    if (league != null)
    {
   
        if (type != null)
        {
                          
                if (SecondTab != null) {
                    SecondTab.className="";
                     //alert("2");
                    //writeHistory("SecondTab=null");
                }
                
                if (FirstTab != null) {
                    FirstTab.className="";
                    // alert("1");
                    //writeHistory("FirstTab=null");
                }
                
                if (spreadTab != null) {
                    spreadTab.className="";
                    // alert("sp");
                    //writeHistory("SpreadTab=null");
                } 
                
                if (mlTab != null) {
                    mlTab.className="";
                     //alert("ml");
                    //writeHistory("mlTab=null");
                }
            
            
                if(type == 'spread')
                {
                    myTab = spreadTab;  
                     if (myTab != null) {      
                         myTab.className = "active"; 
                          //alert("sp-set");
                         //writeHistory("SpreadTab=active");   
                     }                          
                }else if(type == 'ml'){
              
                    myTab = mlTab;  
                   
                     if (myTab != null) {   
                        myTab.className = "active";  
                        // alert("ml-set");
                         //writeHistory("mlTab=active");   
                     }
                }else if(type == '1st'){
                    myTab = FirstTab;  
                     if (myTab != null) {      
                            myTab.className = "active";
                          //   alert("1-set");
                             //writeHistory("FirstTab=active");   
                     } 
                }else if(type == '2nd'){
                    myTab = SecondTab;    
                     if (myTab != null) {    
                            myTab.className = "active"; 
                            // alert("2-set");
                             //writeHistory("SecondTab=active");   
                     }
                }
                 
        }
    }
    //writeHistory("SetTabClass");
}

function writeHistory(message){ 
     historyDiv = document.getElementById('History1'); 
     historyDiv.appendChild(document.createTextNode(message)); 
     historyDiv.appendChild(document.createElement('BR'));  
     historyDiv.scrollTop += 50; 
    }
    
    
    function setPreTabs(){
    
    //alert("setPreTabs");
   
       // window.setTimeout("InitializePage()", 10000);  
       
        if (hiddenLeague_ID != null){       
            if(hiddenLeague_ID.value == '5' || hiddenLeague_ID.value == '6'){
                SetTabClass(hiddenLeague_ID.value, 'ml');
            }else{                
                 SetTabClass(hiddenLeague_ID.value, 'spread');
            }
            
           
        }
        
          //window.setTimeout("InitializePage()", 1000);     
        
        }
        
        
        function replacestring(str_normal,str_find,str_replace,int_case_insensitive)
{
if (arguments.length<3 || str_find=="" || str_normal=="" || typeof("".split)!="function")
return(str_normal);

//no parm means default, "case SENSITIVE"...
if(!(int_case_insensitive))
return(str_normal.split(str_find)).join(str_replace);

str_find=str_find.toLowerCase();

var rv="";
var ix=str_normal.toLowerCase().indexOf(str_find);
while(ix>-1)
{
rv+=str_normal.substring(0,ix)+str_replace;
str_normal=str_normal.substring(ix+str_find.length);
ix=str_normal.toLowerCase().indexOf(str_find);
}
return(rv+str_normal);
}
        
        
       
    
     
     









	