function BodyLoad()
{
var sURL = parent.window.document.URL.toString();
var sid = extractValue(sURL,"id");
if(sid)
{
SendQuery('get_site_fromsid',sid);
}
else
{
SendQuery("","");
}
}

function extractValue(aString,name)
{
var startpos = 0;
var endpos = 0;
name += "=";
var pos = aString.indexOf(name);
var value = "";
if(pos != -1)
{
startpos = pos + name.length;
endpos = aString.indexOf("&",startpos)
if (endpos == -1)
endpos = aString.length;
value = aString.substring(startpos,endpos);
}
return value;

}
// Initializing AJAX  -- Start
function Initialize()
{
    try
    {
        req=new ActiveXObject("Msxml2.XMLHTTP");
	req_corners=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e)
    {
        try
        {
            req=new ActiveXObject("Microsoft.XMLHTTP");
	    req_corners=new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(oc)
        {
            req=null;
	    req_corners=null;
        }
    }

    if(!req&&typeof XMLHttpRequest!="undefined")
    {
        req= new   XMLHttpRequest();
}
   if(!req_corners&&typeof XMLHttpRequest!="undefined")
    {
     req_corners=new   XMLHttpRequest();
}
} 
// Initializing AJAX  -- End
var param=""; 
var value=""; 
var countryvalue="";
var statevalue="";
var sitevalue="";
var datevalue="";
var datevalue="";
var get_variable_contentvalue="";
var hostname=location.hostname;
function fadeBGCol() {doBGFade(document.getElementById("vizpageupdate"),[150,150,150],[240,240,240],'rgb(240,240,240)',30,30,1);}
//*******************

function doBGFade(elem,startRGB,endRGB,finalColor,steps,intervals,powr) {
//BG Fader by www.hesido.com
	if (elem.bgFadeInt) window.clearInterval(elem.bgFadeInt);
	var actStep = 0;
	elem.bgFadeInt = window.setInterval(
		function() {
			elem.style.backgroundColor = "rgb("+
				easeInOut(startRGB[0],endRGB[0],steps,actStep,powr)+","+
				easeInOut(startRGB[1],endRGB[1],steps,actStep,powr)+","+
				easeInOut(startRGB[2],endRGB[2],steps,actStep,powr)+")";
			actStep++;
			if (actStep > steps) {
			elem.style.backgroundColor = finalColor;
			window.clearInterval(elem.bgFadeInt);
			}
		}
		,intervals)
}


//*******************

function easeInOut(minValue,maxValue,totalSteps,actualStep,powr) {
//Generic Animation Step Value Generator By www.hesido.com
	var delta = maxValue - minValue;
	var stepp = minValue+(Math.pow(((1 / totalSteps)*actualStep),powr)*delta);
	return Math.ceil(stepp)
}



function SendQuery(paramperl,valueperl)
{
Initialize();
param=paramperl;
value=valueperl;
if(param == "")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl";
}
if(param == "getsuggest"&& (value.length > 2) )
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now4=get_variable_suggest&suggest="+value+"";
}
if(param == "get_variable_content")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now1=get_variable_content&vari="+value+"";
get_variable_contentvalue=value;
}
if(param == "get_state")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now=get_state&country="+value+"";
countryvalue=value;
}
if(param == "get_site_var")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now2=get_site_var&vari="+get_variable_contentvalue+"&varivalue="+value+"";
statevalue=value;
}
if(param == "get_show_site")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now2=get_show_site&country="+countryvalue+"&state="+value+"&show_state="+value+"";
statevalue=value;
}
if(param == "get_site_table")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now3=get_site_table&country="+countryvalue+"&state="+statevalue+"&show_state="+statevalue+"&show_site="+value+"";
var url2="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/corners.2.pl?&show_site="+value+"&res=250m";
document.getElementById("perloutputcorners").src=url2; 
sitevalue=value;
}
if(param == "get_site_table_2")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now3=get_site_table_2&country="+countryvalue+"&state="+statevalue+"&show_state="+statevalue+"&show_site="+value+"";
var url2="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/corners.2.pl?&show_site="+value+"&res=250m";
document.getElementById("perloutputcorners").src=url2; 
sitevalue=value;
}
if(param == "get_site_fromsid")
{
var url="http://"+hostname+"/cgi-bin/MODIS/GR_col5_1/siteselection.pl?now3=get_site_table_3&siteid="+value+"";
sitevalue=value;
}

var sURL = parent.window.document.URL.toString();
var sid = extractValue(sURL,"id");
    if(url!=null)
    {
if(req!=null)
    {
      	req.onreadystatechange  = Process ;
	req.open("GET", url, true);
	req.send(null);
    }
    }
    if(url2!=null)
    {
 if(req_corners!=null)
    {
      	req_corners.onreadystatechange  = Process ;
	//if(sid){req_corners.open("GET", url2, false);}else{req_corners.open("GET", url2, true);}
	req_corners.open("GET", url2, true);
        req_corners.send(null);
    }
    }
}

function Process()
{


    if (req.readyState == 4)
        {
		
         if (req.status == 200)
            {
			
                if(req.responseText=="")
				{
				        HideDiv("perloutputvariable");
                                        HideDiv("perloutputcountry");
					HideDiv("perloutputstate");
					HideDiv("perloutputsites");
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");				
					
					
				}
                else			
               			{	
					ShowDiv("perloutputvariable");
				        ShowDiv("perloutputcountry");
					ShowDiv("perloutputstate");
					ShowDiv("perloutputsites");			
					ShowDiv("vizpageupdate");
					ShowDiv("perloutputcorners");
                  		if(param == "")
					{
                    			document.getElementById("perloutputvariable").innerHTML =req.responseText;
					document.getElementById("vizpageupdate").innerHTML="";
					HideDiv("perloutputcountry");
					HideDiv("perloutputstate");
					HideDiv("perloutputsites")									
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}
					if(param == "getsuggest" )
					{
                    			document.getElementById("perloutputsites").innerHTML =req.responseText;
					document.getElementById("vizpageupdate").innerHTML="";
					document.getElementById("perloutputstate").innerHTML="";
					document.getElementById("perloutputcountry").innerHTML="";
					HideDiv("perloutputcountry");
					HideDiv("perloutputstate");														
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}
					if(param == "get_variable_content")
					{
					document.getElementById("perloutputcountry").innerHTML =req.responseText;
					document.getElementById("vizpageupdate").innerHTML="";
					HideDiv("perloutputsites");
					HideDiv("perloutputstate");										
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}
					if(param == "get_state" && countryvalue =="USA")
					{
					document.getElementById("perloutputstate").innerHTML =req.responseText;
					HideDiv("perloutputsites");										
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}
					if(param == "get_state" && countryvalue !="USA")
					{
					document.getElementById("perloutputsites").innerHTML =req.responseText;
					document.getElementById("perloutputstate").innerHTML="";
					HideDiv("perloutputstate");							
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}
					if(param == "get_show_site" )
					{
					document.getElementById("perloutputsites").innerHTML =req.responseText;							
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}				
					if(param == "get_site_var")
					{
					HideDiv("perloutputstate");
					document.getElementById("perloutputstate").innerHTML="";
					document.getElementById("perloutputsites").innerHTML =req.responseText;							
					HideDiv("vizpageupdate");
					HideDiv("perloutputcorners");
					}
					if(param == "get_site_fromsid")
					{
					var sitename =req.responseText;	
					//document.getElementById("perloutputstate").innerHTML="";						
					SendQuery('get_site_table',sitename);
					}					
					if(param == "get_site_table")
					{
					fadeBGCol();
					document.getElementById("vizpageupdate").innerHTML=req.responseText;
					if(req_corners.readyState == 4){if(req_corners.status == 200){
               				if(req_corners.responseText==""){}else{
					document.getElementById("perloutputcorners").innerHTML=req_corners.responseText;}}}
					}
					if(param == "get_site_table_2")
					{
					fadeBGCol();
					document.getElementById("perloutputstate").innerHTML="";
					HideDiv("perloutputstate");
					document.getElementById("vizpageupdate").innerHTML=req.responseText;
						if(req_corners.readyState == 4){if(req_corners.status == 200){
               				if(req_corners.responseText==""){}else{
					document.getElementById("perloutputcorners").innerHTML=req_corners.responseText;}}}
					}
					
                }
            }
            else
            {
	        document.getElementById("perloutputcorners").innerHTML="<b>There was a problem retrieving Information, please try back in later. </b><br>"+req_corners.statusText;
		document.getElementById("perloutputcountry").innerHTML="<b>There was a problem retrieving Information, please try back in later. </b><br>"+req.statusText;
		document.getElementById("perloutputstate").innerHTML="<b>There was a problem retrieving Information, please try back in later. </b><br>"+req.statusText;
		document.getElementById("perloutputsites").innerHTML="<b>There was a problem retrieving Information, please try back in later. </b><br>"+req.statusText;
		document.getElementById("perloutputdates").innerHTML="<b>There was a problem retrieving Information, please try back in later. </b><br>"+req.statusText;
		document.getElementById("vizpageupdate").innerHTML="<b>There was a problem retrieving Information, please try back in later. </b><br>"+req.statusText;
            }
        }
		
}


function ShowDiv(divid)
{
   if (document.layers) document.layers[divid].visibility="show";
   else document.getElementById(divid).style.visibility="visible";
}

function HideDiv(divid)
{
   if (document.layers) document.layers[divid].visibility="hide";
   else document.getElementById(divid).style.visibility="hidden";
}

