﻿var xmlHttp

function showCal()
{ 
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="getcal.aspx?";
url=url+"sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function stateChanged() 
{ 
if (xmlHttp.readyState==4)
    { 
    document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
    }
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}

function CurrLocation() {var loc=window.location.toString();var locs=loc.split("/");var url = locs[locs.length-1].toString();var pos = url.indexOf('?');if (pos>-1) {url = url.substring(0, pos);}return url}
function CurrLocationWithQS() {var loc=window.location.toString();var locs=loc.split("/");var url = locs[locs.length-1].toString();return url}


function makeEventFunc( param1, param2 ) 
{ 
     return function() 
     { 
         updateReservation(param1, param2);
     } 
} 

function setOriginalPrice(el)
{
    document.getElementById("previousPrice").value = el.value;
}

function updatePrice(el)
{
    var id = el.id;
    id = id.replace("txt","");
    
    var newPrice = el.value;
    newPrice = newPrice.replace("$","");
	newPrice = newPrice.replace(/,/g,""); // replaces all instances of ","
	newPrice = newPrice.replace(")","");
	newPrice = newPrice.replace("(", "-");
	newPrice = parseFloat(newPrice);
	
	var previousPrice = document.getElementById("previousPrice").value;
	previousPrice = previousPrice.replace("$","");
	previousPrice = previousPrice.replace(/,/g,""); // replaces all instances of ","
	previousPrice = previousPrice.replace(")","");
	previousPrice = previousPrice.replace("(", "-");
	previousPrice = parseFloat(previousPrice);
	
	var AmtTotalElement = document.getElementById('AmtTotal');
	var AmtTotal = AmtTotalElement.innerHTML;
    AmtTotal = AmtTotal.replace("$","");
	AmtTotal = AmtTotal.replace(/,/g,""); // replaces all instances of ","
	AmtTotal = AmtTotal.replace(")","");
	AmtTotal = AmtTotal.replace("(", "-");
	AmtTotal = parseFloat(AmtTotal);
	AmtTotalElement.innerHTML = formatCurrency(AmtTotal + (newPrice - previousPrice));

    // update the xml file    
    var rt = '';
	rt += id + '';
	rt += newPrice + '';						
	var url = CurrLocationWithQS();
	if (url.indexOf('?') == - 1) {url +='?';} else {url +='&';}
	url += 'up='+encodeURIComponent(rt); 
	var a = new ajax();
	a.call(url);	
}

function updateReservation(id, isReserved) {	
  
    //*****************************************************
    //  THIS SECTION TAKES CARE OF UPDATING THE XML FILE
    //*****************************************************
	var rt = '';
	rt += id + '';
	rt += isReserved + '';						
	var url = CurrLocationWithQS();
	if (url.indexOf('?') == - 1) {url +='?';} else {url +='&';}
	url += 'qs='+encodeURIComponent(rt); 
	var a = new ajax();
	a.call(url);	
		
	//*****************************************************
    //  CHANGE THE PAGE ELEMENTS
    //*****************************************************
	var imgID = "img" + id;
	var ImageElement = document.getElementById(imgID);
   
   	var amtID = "txt" + id;
   	var AmountElement = document.getElementById(amtID).value;
   	AmountElement = AmountElement.replace("$","");
	AmountElement = AmountElement.replace(/,/g,""); // replaces all instances of ","
	AmountElement = AmountElement.replace(")","");
	AmountElement = AmountElement.replace("(", "-");
	AmountElement = parseFloat(AmountElement);
	
	if (isReserved == '0') // turns from x to check
	{
	    ImageElement.src = "images/check.gif";
	    ImageElement.alt = "available";
	    ImageElement.onclick = makeEventFunc(id, "-1");
	    document.getElementById(amtID).readOnly = false;
	    document.getElementById(amtID).style.backgroundColor = '#ffffff';
	    // make amount opposite
	    AmountElement = AmountElement * -1;
	}
	else
	{
	    ImageElement.src = "images/x.gif";
	    ImageElement.alt = "reserved";
	    ImageElement.onclick = makeEventFunc(id, "0"); 
	    document.getElementById(amtID).readOnly = true;
	    document.getElementById(amtID).style.backgroundColor = '#eeeeee';
	}
	
	// add/subtract to total
	var AmtEarnedElement = document.getElementById('AmtEarned');
   	var TotalEarned = AmtEarnedElement.innerHTML;
   	TotalEarned = TotalEarned.replace("$","");
	TotalEarned = TotalEarned.replace(/,/g,""); // replaces all instances of ","
	TotalEarned = TotalEarned.replace(")","");
	TotalEarned = TotalEarned.replace("(", "-");
	TotalEarned = parseFloat(TotalEarned);
	TotalEarned += AmountElement;
	AmtEarnedElement.innerHTML = formatCurrency(TotalEarned);
}

function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+
num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + '$' + num + '.' + cents);
}