var xmlHttp=new Array();
var contract_count=0;

var pricesReturnedArray=new Object();
var filesReturnedArray=new Object();
var divLoadedArray=new Array();
var surveyReturnedArray=new Array();

function divLoaded(e)
{
    return (typeof(divLoadedArray[e]) != 'undefined' && divLoadedArray[e]); 
}

// the code setup here is a little goofy so that we can allow multiple
// overlapping AJAX calls

function updateAreaPrices(code,id,count)
{
    xmlHttp[code]=GetXmlHttpObject()
    if (xmlHttp[code]==null) {
        alert("Browser does not support HTTP Request");
        return;
    }
    if (code.length!=3)
        return;
    contract_count=count;
    var url='http://'+location.host+"/backend/get_area_prices.php";
    url=url+"?area="+code;
    url=url+"&id="+id;
    //alert(url);
    /*url=url+"&sid="+Math.random();*/
    function pricesReturned()
    {
        if (xmlHttp[code].readyState==4 || xmlHttp[code].readyState=="complete") {
            var prices=xmlHttp[code].responseText.split(',');
            var id=prices[0];
            for(i=0;i<3;++i){
                cur_id=id+'_'+i;
                //ge(cur_id+'s').innerHTML='$'+prices[i+1]+'<input type="hidden" name="'+cur_id+'" id="'+cur_id+'" value="'+prices[i+1]+'" size="4" />';
                ge(cur_id+'s').innerHTML='$'+'<input type="text" name="'+cur_id+'" id="'+cur_id+'" value="'+prices[i+1]+'" size="4" onkeyup="updateContractPrice('+contract_count+');" />';
            } 
        }
        updateContractPrice(contract_count);
    }

    pricesReturnedArray[code]=pricesReturned;
    xmlHttp[code].onreadystatechange=pricesReturnedArray[code];//(code);
    xmlHttp[code].open("GET",url,true);
    xmlHttp[code].send(null);
}

function getFile(file,id)
{
    xmlHttp[file]=GetXmlHttpObject()
    if (xmlHttp[file]==null) {
        alert("Browser does not support HTTP Request");
        return;
    }
    var url='http://'+location.host+"/"+file;
    //alert(url);
    if(url.indexOf('?')==-1)
        url=url+"?";
    else
        url=url+"&";
    url=url+"sid="+Math.random();
    function fileReturned()
    {
        if (xmlHttp[file].readyState==4 || xmlHttp[file].readyState=="complete") {
            ge(id).innerHTML=xmlHttp[file].responseText;
            s=ge(id).style;
            s.opacity='';
            s.MozOpacity='';
            s.KhtmlOpacity='';
            //s.filter=null;
            divLoadedArray[id]=true;
        }
    }
    
    ge(id).innerHTML='<div style="position:absolute;text-align:center;width:98%;font-size:large;" id="'+id+'_loading">Loading...</div>'+ge(id).innerHTML;
    s=ge(id).style;
    s.opacity=.5;
    s.MozOpacity=.5;
    s.KhtmlOpacity=.5;
    //s.filter='alpha(opacity=50)';//omitted because IE7 stops anti-aliasing

    filesReturnedArray[file]=fileReturned;
    xmlHttp[file].onreadystatechange=filesReturnedArray[file];//(code);
    xmlHttp[file].open("GET",url,true);
    xmlHttp[file].send(null);
}

function submitPOSurvey(search_id,name,value)
{
    id=name+"_"+value;
    xmlHttp[id]=GetXmlHttpObject()
    if (xmlHttp[id]==null) {
        alert("Browser does not support HTTP Request");
        return;
    }
    var url='http://'+location.host+"/search_survey.php?search_id="+search_id+"&name="+name+"&value="+value;

    function surveyReturned()
    {
        if (xmlHttp[id].readyState==4 || xmlHttp[id].readyState=="complete") {
            ge(name+"_status").innerHTML=xmlHttp[id].responseText;
        }
    }
    ge(name+"_status").innerHTML='Submitting...';

    surveyReturnedArray[id]=surveyReturned;
    xmlHttp[id].onreadystatechange=surveyReturnedArray[id];//(code);
    xmlHttp[id].open("GET",url,true);
    xmlHttp[id].send(null);
}

function GetXmlHttpObject()
{
    var objXMLHttp=null
    if (window.XMLHttpRequest)
        objXMLHttp=new XMLHttpRequest();
    else if (window.ActiveXObject)
        objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
    return objXMLHttp;
}
