var loading=[];
var result=[];
var sum_pop;


function makeXML () {
	if (typeof XMLHttpRequest == 'undefined') {
		objects = Array(
			'Microsoft.XmlHttp',
			'MSXML2.XmlHttp',
			'MSXML2.XmlHttp.3.0',
			'MSXML2.XmlHttp.4.0',
			'MSXML2.XmlHttp.5.0'
		);
		for (i = 0; i < objects.length; i++) {
			try {
				return new ActiveXObject(objects[i]);
			} catch (e) {}
		}
	} else {
		return new XMLHttpRequest();
	}
}


function getValidation(validation,real_domain) {
	var form = document.getElementById('form');
	result[validation] = document.getElementById(validation);
	result[validation].innerHTML = "<img src='../img/ajax-loader.gif'>";
	result[real_domain] = document.getElementById(real_domain);
	result[real_domain].innerHTML = "<img src='../img/ajax-loader.gif'>";
	var oXml = makeXML();
	oXml.open('get', '../php/process_validation.php?s=' + validation + '&url=' + escape(form.domain.value));
	oXml.onreadystatechange = function () {
		if (oXml.readyState == 4 && oXml.status == 200) {
			response=oXml.responseText.split("|");
			result[validation].innerHTML = response[0];
			result[real_domain].innerHTML = response[1];
		}
	}
	oXml.send(null);
}


function getResult(entity) {
	var form = document.getElementById('form');
	result[entity] = document.getElementById(entity);
	if(entity=="badge") loader = "<img src='../img/preloader.gif'>";
	else loader = "<img src='../img/ajax-loader.gif'>";
	result[entity].innerHTML = loader;
	var oXml = makeXML();
	oXml.open('get', '../php/process.php?s=' + entity + '&url=' + escape(form.domain.value));
	oXml.onreadystatechange = function () {
		if (oXml.readyState == 4 && oXml.status == 200) {
			result[entity].innerHTML = oXml.responseText;
		}
	}
	oXml.send(null);
}


function getLinkPopularityResult(entity) {
	var form = document.getElementById('form');
	result[entity] = document.getElementById(entity);
	result[entity].innerHTML = "<img src='../img/ajax-loader.gif'>";
	var oXml = makeXML();
	oXml.open('get', '../php/process.php?s=' + entity + '&url=' + escape(form.domain.value));
	oXml.onreadystatechange = function () {
		if (oXml.readyState == 4 && oXml.status == 200) {
			result[entity].innerHTML = oXml.responseText;
			computeTotal(oXml.responseText);
		}
	}
	oXml.send(null);
}


function computeTotal(number) {
	number=number.replace(/<\/?[^>]+(>|$)/g, "");
	number=parseInt(trim(number));
	sum_pop+=number;
	total = document.getElementById('pop_total');
	total.innerHTML = addCommas(sum_pop);
}

function getResults() {
	var form = document.getElementById('form');
	var pr = ['www_domain','no_www_domain','www_pagerank', 'no_www_pagerank'];
	var alexa = ['alexa_domain', 'alexa_rank'];
	var pop = ['pop_google','pop_yahoo','pop_bing','pop_altavista'];
	var dir = ['dir_dmoz','dir_yahoo','dir_archive'];

	form.domain.focus();
	sum_pop=0;
	total = document.getElementById('pop_total');
	total.innerHTML = "";

	for(var i = 0; i < pr.length; i++) {
		getResult(pr[i]);
	}
	for(var i = 0; i < alexa.length; i++) {
		getResult(alexa[i]);
	}
	for(var i = 0; i < pop.length; i++) {
		getLinkPopularityResult(pop[i]);
	}
	for(var i = 0; i < dir.length; i++) {
		getResult(dir[i]);
	}
	getResult('domain_detail');
	getValidation('www_msg','www_real_domain');
	getValidation('no_www_msg','no_www_real_domain');
}

function getBadge() {
	var badge = document.getElementById('badge');
	badge.innerHTML = "<img src='../img/preloader.gif'>";
	getResult("badge");
}



/* function validateCaptcha(captcha) {
	var oXml = makeXML();
	oXml.open('get', '../library/captcha.php?captchasubmit=' + captcha);
	oXml.onreadystatechange = function () {
		if (oXml.readyState == 4 && oXml.status == 200) {
			if(oXml.responseText==0) {
				alert("Invalid verification code. Please try again.");
				return;
			} else {
				$("#result-container").fadeIn();
				getResults();
			}
		}
	}
	oXml.send(null);
} */