function printWagerConfirmation() {
	
	if (document.getElementById != null)
	{
		var html = '<HTML>\n<HEAD>\n';
		html += '<link rel=\"STYLESHEET\" type=\"text/css\" href=\"/template/styles/sportsbook-bets-print-4-5-1.css\">';
		html += '<scri' + 'pt src="/template/scri' + 'pts/hashmap.js" type="text/javascript"></s' + 'cript>';
		html += '<scri' + 'pt src="/template/scri' + 'pts/form-button.js" type="text/javascript"></s' + 'cript>';

		html += '\n</HE' + 'AD>\n<BO' + 'DY bg' + 'color="white">\n';
		
		var printReadyElem = document.getElementById("bet-frame");
		
		if (printReadyElem != null)
		{
				html += printReadyElem.innerHTML;
		}
					
		html += '\n</BO' + 'DY>\n</HT' + 'ML>';
		
		var printWin = window.open('','WagerConfirmation','width=720,height=400,scrollbars=1');
		printWin.document.open();
		printWin.document.write(html);
		printWin.document.close();
		printWin.print();
	}

}

function balanceCols(balanceWithShortest) {

	var col1Height = document.getElementById('bet-details').offsetHeight;
	var col2Height = document.getElementById('risk-details').offsetHeight;

	var ie = (document.all);
	var ieoffset = 0;
	if (ie) {
		ieoffset = 0;
	} else {
		ieoffset = -32;
	}

	if (balanceWithShortest) {
		if (col1Height < col2Height) {
			document.getElementById('risk-details-fieldset').style.height = col1Height-12+ieoffset + 'px';	
		} else {
			document.getElementById('bet-details-fieldset').style.height = col2Height-22+ieoffset + 'px';	
		}
	} else {	
		if (col1Height > col2Height) {
			document.getElementById('risk-details-fieldset').style.height = col1Height+ieoffset + 'px';				
		} else {
			if (ie){
					document.getElementById('bet-details-fieldset').style.height = col2Height+ieoffset-12 + 'px';	
			} else {
				document.getElementById('bet-details-fieldset').style.height = col2Height+ieoffset + 'px';	
			
			}
		}
	}	
}


function submitForm(formName, objButton, disable, referer) {
	var width;
	if (disable) {
		objButton.className = 'button-disabled';
		if ( !buttons.containsKey(objButton.id) ) {
	  		buttons.put(objButton.id,'disabled');
		} else {
			return false;
		}
	}

	switch(objButton.id) {
		case 'cancelTicket':
			self.location='/horse-betting/cancel-ticket.jsp';
			return false;
			break;
		case 'confirmTicket':
			document.forms[formName].submit();
			return true;
			break;
		case 'backtoRaces':		
			cancel(referer);
			return false;
			break;

	}
	
}			


function cancel(targetURL) {
	document.location.href = targetURL;
}

	// need function that onloads reads the cookie
	// if not found default it to open
	// if cookie found, set the page to look like it
	var horseRacingCookieName = "HorseRacingViewPrefs";
	
	function readPreferences(){
			var theCookie = "" + document.cookie;
			var ind=theCookie.indexOf(horseRacingCookieName);
			var picksPreferences = "picks:open";
	
			if (ind==-1) {		
				document.cookie = horseRacingCookieName + "=" + picksPreferences;
				picksPreferences = "picks:open";				
			} else {
				var ind1=theCookie.indexOf(';',ind);
				picksPreferences = unescape(theCookie.substring(ind+horseRacingCookieName.length+1,ind1));							
			}		
	
        	var picks = document.getElementById( "picks" );	
			var footerActive = document.getElementById( "active-picks-footer");		

			if (picksPreferences == "picks:open"){
				
	            picks.className = "open";			
				footerActive.className = "open";				
			}
			
			if (picksPreferences == "picks:closed"){
	            picks.className = "closed";		
				footerActive.className = "closed";								
			}
		
	}
	
	
	// need function that onclick sets the state of
	// the page.
	 
	function setPreferences(picksValue){
				document.cookie = horseRacingCookieName + "=picks:" + picksValue;					
	}

	// hides the picks section on click of the picks header
	
    function showHidePicks(){  
        var picks = document.getElementById( "picks" );
	
		if (picks.className == "dsbl"){
			return;
		}
			
        if( picks.className == "closed" ){
            picks.className = "open";
            setPreferences( "open" );
        } else {
            picks.className = "closed";
            setPreferences( "closed" );
        }
		
		var footerActive = document.getElementById( "active-picks-footer");		
        if( footerActive.className == "closed" ){
			footerActive.className = "open";
		} else {
			footerActive.className = "closed";	
		}		
		
    }
	
	
function ScheduleMenu(){
    this.openBranches = new Array();
}

ScheduleMenu.prototype.toggleBranch = function( elmNode ){  
    var branch = elmNode.parentNode;

	// if this branch is MTP then you need to set a special cookie
	// to show it's been touched
	if (branch.id == "MTP"){
	    if( branch.className == "branch-closed" ) {
		    document.cookie = "HorseBettingMenuConfigMTP=open; path=/";
	        branch.className = "branch-open";					
		} else {
		    document.cookie = "HorseBettingMenuConfigMTP=closed; path=/";				
	        branch.className = "branch-closed";			
		}
	} else if (branch.id == "Featured"){
	    if( branch.className == "branch-closed" ) {
		    document.cookie = "HorseBettingMenuConfigFeatured=open; path=/";
	        branch.className = "branch-open";					
		} else {
		    document.cookie = "HorseBettingMenuConfigFeatured=closed; path=/";				
	        branch.className = "branch-closed";			
		}						
	} else {

	    if( branch.className == "branch-closed" ) {
	        //closeOpenBranches();
	        this.addOpenBranch( branch.id )
	        branch.className = "branch-open";
	    } else {
	        this.removeOpenBranch( branch.id )
	        branch.className = "branch-closed";
	    }
		
	    this.setCookie();
	}
}

ScheduleMenu.prototype.addOpenBranch = function( strId) {
    this.openBranches[ this.openBranches.length ] = strId;
}

ScheduleMenu.prototype.removeOpenBranch = function( strId) {
    var newOpenBranches = new Array();
    
    var len = this.openBranches.length; 
    for( i=0; i<len; i++ ) {
        var currId = this.openBranches[i];
        if( strId != currId ){
            newOpenBranches[ newOpenBranches.length ] = currId;
        }
    }
    
    this.openBranches = newOpenBranches;
}

ScheduleMenu.prototype.closeOpenBranches = function() {
    var len = this.openBranches.length; 
    for( i=0; i<len; i++ ) {
        var branch = document.getElementById( openBranches[i] );
        branch.className = "branch-closed";
    }
    this.openBranches = new Array()
}

ScheduleMenu.prototype.setCookie = function() {
    var cookieValue = "";
    var len = this.openBranches.length; 
	
    for( i=0; i<len; i++ ) {
        cookieValue += this.openBranches[i];
        if( i < ( len -1 ) ) {
            cookieValue += '-';
        }
    }
	
	//alert(cookieValue);
    
    document.cookie = "HorseBettingMenuConfig="+cookieValue+"; path=/";	
}
	
	
function activateUpdateTicket(){
	var updateTicketButton = document.getElementById("update-ticket-button-area");
	
	var htmlUpdateTicketButton = "";
	
	htmlUpdateTicketButton += "<a href=\"javascript:updateTotal();\">";	
	htmlUpdateTicketButton += "<img align=\"right\" id=\"updateticketbutton\" name=\"updateticketbutton\"";
	htmlUpdateTicketButton += "src=\"/images/horse-betting/button-update-ticket-off.gif\" alt=\"Update Ticket\">";
	htmlUpdateTicketButton += "</a>";	

	updateTicketButton.innerHTML = htmlUpdateTicketButton;


}	

function updateStakeTotal(betId, uniqueId, multiplier, maxAmount, userCurrencyCode){

	//validate value	
	var stakeAmountControl = document.getElementById("stake_" + betId);
	var totalAmountControl = document.getElementById("total_" + betId);	
	var errorControl = document.getElementById("error_bet_" + betId);	
	stripAlpha(stakeAmountControl);
	
	var stakeAmount = stakeAmountControl.value;
	if (stakeAmount < 0 || stakeAmount == 'NaN' )	{
		errorControl.style.display = "block";		
		errorControl.innerHTML = "Unit stake cannot be zero or negative";
		// add id to cookie and writeitout "Z"- invalid amt of zero
		document.cookie = "HB" + uniqueId + "=Z" + stakeAmount +"; path=/;";	

	} else if ( !IsNumeric(stakeAmount) ){
		errorControl.style.display = "block";		
		errorControl.innerHTML = "You've entered an invalid value";

	} else {

		if ( ( parseInt(stakeAmount) > parseInt(maxAmount) ) && maxAmount != -1){

			errorControl.style.display = "block";		
			errorControl.innerHTML = "The maximum stake allowed to wager on this selection is " + userCurrencyCode + dollarize(maxAmount);
			// add id to cookie and writeitout "E"- invalid amt
    		document.cookie = "HB" + uniqueId + "=E" + stakeAmount +"; path=/;";	
		
		} else {

			totalAmountControl.innerHTML = userCurrencyCode + " " + dollarize(stakeAmount * multiplier);
			if (stakeAmount == '0'||stakeAmount == ''){
				errorControl.style.display = "block";		
				errorControl.innerHTML = "Unit stake value can not be zero, negative or empty";
				// add id to cookie and writeitout "Z"- invalid amt of zero
	    		document.cookie = "HB" + uniqueId + "=Z" + stakeAmount +"; path=/;";	
			} else {
				errorControl.innerHTML = "";
				errorControl.style.display = "none";
				// add id to cookie and writeitout "V"- valid amt
	    		document.cookie = "HB" + uniqueId + "=V" + stakeAmount +"; path=/;";	
			}
		}	
	}
}

function updateStakeBlur(betId, userCurrencyCode){
	var stakeAmountControl = document.getElementById("stake_" + betId);
	var totalAmountControl = document.getElementById("total_" + betId);		
	var errorControl = document.getElementById("error_bet_" + betId);	
		
	if (stakeAmountControl.value == "")	{
		totalAmountControl.value = userCurrencyCode + " 0.00"
	} 

}

function stripAlpha(field) {
	var val = field.value;
	field.value = val.replace(/[^0-9]/g,"");
}


function dollarize (expr) {
	return format(expr,2);
}

function deleteWagerCookies(){
	var theCookie = "" + document.cookie;
	var cookieArr = theCookie.split(";");
	for (j = 0; j < cookieArr.length; j++){
		if (cookieArr[j].indexOf("HB") > -1){
			var now = new Date();
			var cookieName = cookieArr[j].substring(0, cookieArr[j].indexOf("="));
			document.cookie = cookieName + "=; path=/; expires="+now.toGMTString()+";"+";";	
		}
	}
}

// this function takes care of the decimal place formating
function format (expr, decplaces) {
	var str = "" + Math.round (eval(expr) * Math.pow(10,decplaces));
	while (str.length <= decplaces) {
    	str = "0" + str;
	}
	var decpoint = str.length - decplaces;
	return str.substring(0,decpoint) + "." + str.substring(decpoint,str.length);
}

function IsNumeric(sText)

{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
   }
   

function racebookHelp(url){
			helpWin = window.open(url,"","toolbar=no,personal=no,menubar=no,status=yes,resizable=yes,width=562,height=427,location=no,scrollbars=yes");

	}

// ******************* end calculator *************************//


function selectbillboard(id){

	if (selectedspotlight != id){
	
		if (selectedspotlight != ""){
			var oldspotlight = document.getElementById('spotlight-' + selectedspotlight);
			oldspotlight.style.background = 'url(/images/sportsbook/spotlight-off.gif)';

			var oldspotlightarrow = document.getElementById('spotlight-arrow-' + selectedspotlight);
			oldspotlightarrow.style.background = '#000';
			
			var oldpromoblock =  document.getElementById('promoblock-' + selectedspotlight);				

			if (oldpromoblock){
				oldpromoblock.style.display = 'none';			
			} else {
				oldpromoblock =  document.getElementById('promoblock-default-' + selectedspotlight);				
				oldpromoblock.style.display = 'none';								
			}
		}
				

				
		if (  ! document.getElementById('spotlight-' + id) ){
			return false;
		}
		
		
		var newspotlight = document.getElementById('spotlight-' + id);		
		newspotlight.style.background = 'url(/images/sportsbook/spotlight-selected.gif)';	

		var newspotlightarrow = document.getElementById('spotlight-arrow-' + id);
		newspotlightarrow.style.background = 'url(/images/sportsbook/spotlight-arrow.gif)';	

		var newpromoblock =  document.getElementById('promoblock-' + id);	
		
		if (newpromoblock){
			newpromoblock.style.display = 'block';				
		} else {
			newpromoblock =  document.getElementById('promoblock-default-' + id);				
			newpromoblock.style.display = 'block';										
		}

		selectedspotlight = id;		

		return true;
	}
}


function activatespotlight(id){
	// swap background image
	if (id != selectedspotlight){
		var spotlight = document.getElementById('spotlight-' + id);		
		spotlight.style.background = "url(/images/sportsbook/spotlight-on.gif)";
		spotlight.style.cursor = "pointer";
	}
}

function deactivatespotlight(id){
	// swap background image
	if (id != selectedspotlight){
		var spotlight = document.getElementById('spotlight-' + id);		
		spotlight.style.background = "url(/images/sportsbook/spotlight-off.gif)";
		spotlight.style.cursor = "default";		
	}
	
}

function onloadBillboard(  promoParameter, promoFirst ){

	var promofound = false;
	
	if (promoParameter != ''){
			promofound = selectbillboard( promoParameter );	
	}

	if (!promofound ){
		promofound = selectbillboard( promoFirst );		
	}

	if (!promofound){

		// hide the billboards
//		var billboards = document.getElementById('billboard');
//		billboards.style.display = 'none';
		
		// show default
	
	}				

}


	function showStakeMonth(dropdowncontrol){
	
		var stakeMonth = document.getElementById('stakes-empty');
		stakeMonth.style.display = 'none';
		
		for ( i=0; i < dropdowncontrol.childNodes.length; i++ ) {
		
			if ( typeof(dropdowncontrol.childNodes[i].value) != "undefined" ){
				var stakeMonth = document.getElementById('stakes-' + dropdowncontrol.childNodes[i].value );
				if (stakeMonth){
					stakeMonth.style.display = "none";
				} 
			}			
		}
		
		stakeMonth = document.getElementById('stakes-' + dropdowncontrol.value);
		if (stakeMonth){
			stakeMonth.style.display = "block";
		} else {
			stakeMonth = document.getElementById('stakes-empty');
			stakeMonth.style.display = "block";			
		}
	}
	
	function showGradedStakeMonth(dropdowncontrol){

		var stakeMonth = document.getElementById('graded-stakes-empty');
		stakeMonth.style.display = 'none';
		
		for ( i=0; i < dropdowncontrol.childNodes.length; i++ ) {
		
			if ( typeof(dropdowncontrol.childNodes[i].value) != "undefined" ){
				var stakeMonth = document.getElementById('graded-stakes-' + dropdowncontrol.childNodes[i].value );
				if (stakeMonth){
					stakeMonth.style.display = "none";
				} 
			}			
		}
		
		stakeMonth = document.getElementById('graded-stakes-' + dropdowncontrol.value);
		if (stakeMonth){
			stakeMonth.style.display = "block";
		} else {
			stakeMonth = document.getElementById('graded-stakes-empty');
			stakeMonth.style.display = "block";			
		}
	}	
	
	function selectTab(selectedTab){
		var gradedStakesRaceTab = document.getElementById('tab-schedule-graded-stakes-races'); 
		var stakesRaceTab = document.getElementById('tab-schedule-stakes-races'); 	
		
		
		
		if (selectedTab == 'graded-stake-races'){
			stakesRaceTab.src = '/images/horse-betting/button-schedule-stakes-races-off.jpg';	
			
			gradedStakesRaceTab.src = '/images/horse-betting/button-schedule-graded-stakes-races-selected.jpg';
			gradedStakesRaceTab.onmouseout = '';
			gradedStakesRaceTab.onmouseover = '';	
			
			stakesRaceTab.onmouseout =  function() {stakesRaceTab.src = '/images/horse-betting/button-schedule-stakes-races-off.jpg'};			
			stakesRaceTab.onmouseover = function() {stakesRaceTab.src = '/images/horse-betting/button-schedule-stakes-races-on.jpg'};
			
			var panel = document.getElementById('graded-stakes-calendar');
			panel.style.display = 'block';
		
			panel = document.getElementById('stakes-calendar');
			panel.style.display = 'none';
			
		} else {
			gradedStakesRaceTab.src = '/images/horse-betting/button-schedule-graded-stakes-races-off.jpg';		
			stakesRaceTab.src = '/images/horse-betting/button-schedule-stakes-races-selected.jpg';		
			stakesRaceTab.onmouseout = '';			
			stakesRaceTab.onmouseover = '';	

			gradedStakesRaceTab.onmouseout =  function() {gradedStakesRaceTab.src = '/images/horse-betting/button-schedule-graded-stakes-races-off.jpg'};			
			gradedStakesRaceTab.onmouseover = function() {gradedStakesRaceTab.src = '/images/horse-betting/button-schedule-graded-stakes-races-on.jpg'};
			
			
			var panel = document.getElementById('stakes-calendar');	
			panel.style.display = 'block';	
			
			panel = document.getElementById('graded-stakes-calendar');
			panel.style.display = 'none';
												
		}
	}
