function checkSignupForm() {
	var error = false;
	var form = $('signUpForm');
	var inputs = form.getElementsByTagName('input');
	var country = $('signup_country').value;
	for (var i=0; i<inputs.length; i++) {
		if ((inputs[i].type=="text" || inputs[i].type=="password") && ((inputs[i].id!="signup_district" && inputs[i].value.length==0) || (inputs[i].id=="signup_district" && inputs[i].value.length==0 && country=='IT'))) {
			createErrorMessage(inputs[i].id,"Il campo &egrave; obbligatorio");
			error = true;
		}
	}
	
	if (!checkPasswordConfirm())
		error = true;
	if (!checkEmailConfirm())
		error = true;
	
	return !error;
}

function checkLoginForm() {
	var error = false;
	var form = $('login-form');
	var inputs = form.getElementsByTagName('input');
	for (var i=0; i<inputs.length; i++) {
		if ((inputs[i].type=="text" || inputs[i].type=="password") && inputs[i].value.length==0) {
			createErrorMessage(inputs[i].id,"Il campo &egrave; obbligatorio");
			error = true;
		}
	}
	return !error;
}

function createErrorMessage(id,text) {
	if ($('error_'+id)==undefined) {
		var x = parseInt(findPosX($(id)));
		var y = parseInt(findPosY($(id)));
		var size = Element.getDimensions($(id));
		var div = document.createElement('div');
		div.id = "error_"+id;
		div.className = 'formErrorMessage';
		div.style.position = "absolute";
		div.style.left = (x+parseInt(size.width)-30)+'px';
		div.style.top = (y+10)+'px';
		document.getElementsByTagName('body')[0].appendChild(div);
		$(id).onkeyup = function() {
			checkCompletion(id);
		}
	} else {
		var div = $('error_'+id);
	}
	div.innerHTML = text;
}

function checkCompletion(id) {
	var country = $('signup_country').value;
	if ($(id).value.length>0 || ($(id).id=='signup_district' && country!='IT')) {
		if ($('error_'+id))
			$('error_'+id).parentNode.removeChild($('error_'+id));
	} else {
		if (!$('error_'+id))
			createErrorMessage(id,"Il campo &egrave; obbligatorio");
	}
}

function removeErrorMessages() {
	
}

function removeErrorMessage(id) {
	if ($('error_'+id))
		$('error_'+id).parentNode.removeChild($('error_'+id));
}

function checkUsername() {
	$('ok_signup_username').style.display = 'none';
	var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?~_àèìòù "; 
	for (var i = 0; i < $('signup_username').value.length; i++) {
		if (iChars.indexOf($('signup_username').value.charAt(i)) != -1) {
			createErrorMessage('signup_username',"Lo username non pu&ograve; contenere<br>punteggiatura, caratteri accentati o spazi");
			return false;
		}
	}
	if ($('signup_username').value.length>0) {
		$('loader_signup_username').style.display = 'inline';
		loadContent('/register.php?action=check&username='+$('signup_username').value);
	}
}

function checkPasswordConfirm() {
	if ($('signup_password_r')) {
		if ($('signup_password_r').value.length>0 && $('signup_password_r').value!=$('signup_password').value) {
			createErrorMessage('signup_password_r','Le password inserite non coincidono');
			return false;
		} else return true;
	} else return true;
}

function checkEmailConfirm() {
	if ($('signup_email_r')) {
		if ($('signup_email_r').value.length>0 && $('signup_email_r').value!=$('signup_email').value) {
			createErrorMessage('signup_email_r','Le e-mail inserite non coincidono');
			return false;
		} else return true;
	} else return true;
}

function checkEmail() {
	$('ok_signup_email').style.display = 'none';
	if ($('signup_email').value.length>3) {
		$('loader_signup_email').style.display = 'inline';
		loadContent('/register.php?action=check&email='+$('signup_email').value);
	}
}

//LoadContent
function loadContent(file) {
	//new Effect.Appear($('loading_indicator'), { queue:'end', duration: 0.5 });
	var head = document.getElementsByTagName('head').item(0);
	var scriptTag = document.getElementById('loadScript');
	if(scriptTag) head.removeChild(scriptTag);
	script = document.createElement('script');
	var ranNum= Math.round(Math.random()*Math.random()*1000);
	script.src = file + "&random=" + ranNum;
	script.type = 'text/javascript';
	script.id = 'loadScript';
	head.appendChild(script);
}


function findPosX(obj) {
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function payWithIBAN() {
	$('pay_with_iban_button').onclick = function() {
		return;
	};
	$('pay_with_cc_button').onclick = function() {
		return;
	};
	$('pay_with_pp_button').onclick = function() {
		return;
	};
	
	var extra = "";
	if ($('gift') && $('gift').value=="1")
		extra += "&gift=1";
	if ($('optional_shipment') && $('optional_shipment').value=="1")
		extra += "&optional_shipment=1";
		
	loadContent('/checkout.php?action=payment&payment=iban&code_id='+$('code_id').value+extra);
}

function payWithCC() {
	$('pay_with_iban_button').onclick = function() {
		return;
	};
	$('pay_with_cc_button').onclick = function() {
		return;
	};
	$('pay_with_pp_button').onclick = function() {
		return;
	};
	
	var extra = "";
	if ($('gift') && $('gift').value=="1")
		extra += "&gift=1";
	if ($('optional_shipment') && $('optional_shipment').value=="1")
		extra += "&optional_shipment=1";

	loadContent('/checkout.php?action=payment&payment=cc&code_id='+$('code_id').value+extra);	
}

function payWithPP() {
	$('pay_with_iban_button').onclick = function() {
		return;
	};
	$('pay_with_cc_button').onclick = function() {
		return;
	};
	$('pay_with_pp_button').onclick = function() {
		return;
	};
	
	var extra = "";
	if ($('gift') && $('gift').value=="1")
		extra += "&gift=1";
	if ($('optional_shipment') && $('optional_shipment').value=="1")
		extra += "&optional_shipment=1";
		
	loadContent('/checkout.php?action=payment&payment=pp&code_id='+$('code_id').value+extra);
}
