/**
 * @author acecchin
 * Written Ad hoc to minimize HP data weight
 */

	function whois(xmlhttp, clids, wlid) {
		// Load the Root Element!
		var xmlDoc = xmlhttp.responseXML.documentElement;
		var result = xmlDoc.getAttribute('exists');
		var domain = xmlDoc.getAttribute('site');
	
		if (result == 'false') {
			// Dominio disponibile! OK
			document.getElementById('resultStr').className = 'ok';
			document.getElementById('resultStr').innerHTML = messages['nick_available'];
			document.getElementById('resultField').value = 'OK';
		} else if (result == 'error') {
			// NS Lookup Timeout or... another error!
			document.getElementById('resultStr').className = 'error';
			document.getElementById('resultStr').innerHTML = messages['later_err'];
			document.getElementById('resultField').value = 'KO';
		} else if (result == 'invalid') {
			// NS Lookup Timeout or... another error!
			document.getElementById('resultStr').className = 'error';
			document.getElementById('resultStr').innerHTML = messages['init_digit_err'];
			document.getElementById('resultField').value = 'KO';
		} else {
			// Dominio NON diponibile! KO
			document.getElementById('resultStr').className = 'error';
			document.getElementById('resultStr').innerHTML = messages['nick_not_available'];
			document.getElementById('resultField').value = 'KO';
		}
	}

function test(value) {
	var re = new RegExp('([^a-zA-Z0-9])', 'g');
	if (value.match(re)) {
		return false;
	}
	if (value.length > 16 || value.length < 3) {
		return false;
	}
	return true;
}

function domainControl(element) {

	if (element.value != '') {
		var rnd = new Date().getTime();
		getContent('http://' + location.hostname + '/cgi-bin/av_nick_available.pl?' + element.value + '&' + rnd, new Array(), '', whois );
	}
}

function testDomain(key) {
	if (test(document.getElementById(key).value)) {
		document.getElementById('resultStr').className = 'wait';
		document.getElementById('resultStr').innerHTML = '&nbsp;';
		domainControl(document.getElementById(key));
	} else {
		document.getElementById('resultStr').innerHTML = messages['lett_digit_err'];
		document.getElementById('resultField').value = 'KO';
	}
}

var pending = undefined;

function check(timeout) {
	if (!timeout || timeout < 500) {
		timeout = 1500;
	}

	if (pending !== undefined) clearTimeout(pending);
	pending = setTimeout("testDomain('nick')", timeout);
}