var g_sites = []; //'myip';
var g_al_sites_idx = 0;

var g_al_req_num = 10;
var g_delimiter = "&nbsp;";

var g_al_req = new Array(g_al_req_num);

//containers for each antiviurs result
var g_al_container0 = new Array(g_al_req_num);
var g_al_container1 = new Array(g_al_req_num);
var g_al_container2 = new Array(g_al_req_num);
for (i = 0; i < g_al_container0.length; i++) {
	g_al_container0[i] = 0;
	g_al_container1[i] = 0;
	g_al_container2[i] = 0;
}




function al_loadXMLDoc(rid, url, func) {
	//alert("request:"+rid);
    if (window.XMLHttpRequest) {
		//alert("XMLHttpRequest OK");
        g_al_req[rid] = new XMLHttpRequest();
        g_al_req[rid] .onreadystatechange =function () {
			func(rid);
		}
        g_al_req[rid] .open("GET", url, true);
        g_al_req[rid] .send(null);
    } else if (window.ActiveXObject) {
		//alert("ActiveXObject OK");
        g_al_req[rid]  = new ActiveXObject("Microsoft.XMLHTTP");
        if (g_al_req[rid] ) {
            g_al_req[rid] .onreadystatechange =function () {
			  func(rid);
		    }
            g_al_req[rid] .open("GET", url, true);
            g_al_req[rid] .send();
        }
    } else {
		alert("Cannot send request, maybe you need Firefox");
	}
}



function al_process_req(rid) {   

	if (g_al_req[rid].readyState == 4) {
		if (g_al_req[rid].status == 200) {
			var mytext=g_al_req[rid].responseText;

			////alexa rank |||||| traffic |||||| estimate||||||
			var res = mytext.split("||||||");

			//alexa rank
			if (res.length > 0) g_al_container0[rid].innerHTML = res[0];
			//traffic
			if (res.length > 1) g_al_container1[rid].innerHTML = res[1];
			//estimate
			if (res.length > 2) g_al_container2[rid].innerHTML = res[2];
			g_al_container0[rid]=0;
			g_al_container1[rid]=0;
			g_al_container2[rid]=0;

		} else {
			g_al_container0[rid].innerHTML.replace("<img border=0 src=\"/images/spinner.gif\">", 'E'); //+= g_delimiter +"Error or Aborted";
			g_al_container1[rid].innerHTML.replace("<img border=0 src=\"/images/spinner.gif\">", 'E'); // += g_delimiter +"Error or Aborted";
			g_al_container2[rid].innerHTML.replace("<img border=0 src=\"/images/spinner.gif\">", 'E'); // += g_delimiter +"Error or Aborted";
			g_al_container0[rid]=0;
			g_al_container1[rid]=0;
			g_al_container2[rid]=0;

		}
		alexa_query();
	}  
}



function alexa_query()
{
	var rid = -1;
	var id = 0;
	var site = 'myip.cn';

	for (i = 0; i < g_al_container0.length; i++) {
		if (g_al_container0[i] == 0) {
			rid = i;
			break;
		}
	}

	if(rid == -1){ 
		alert("Please wait, too many requests");
	} else {
	
		if (g_al_sites_idx >= g_sites.length) {
			return false;
		}
		id = g_al_sites_idx;
		g_al_sites_idx++;

		site = g_sites[id];

		res_id =  'res_alexa_'+id;
		g_al_container0[rid] = document.getElementById(res_id);
		g_al_container1[rid] = document.getElementById('res_traffic_'+id);
		g_al_container2[rid] = document.getElementById('res_estimate_'+id);
		if (g_al_container0[rid] == null) {
			return false;
			//alert("Internal error, no container0");
		}

		g_al_container0[rid].innerHTML+=" <img border=0 src=\"/images/spinner.gif\">";
		//g_al_container1[rid].innerHTML+=" <img border=0 src=\"/images/spinner.gif\">";
		//g_al_container2[rid].innerHTML+=" <img border=0 src=\"/images/spinner.gif\">";


		var url = '/alexaquery.php?q='+site;
		//send request
		al_loadXMLDoc(rid, url, al_process_req);    
    }
}




