function hideFattura ()
{ 
	$("#blocco-fattura").hide();
}

function hideIndirizzo()
{ 
	$("#blocco-indirizzo").hide();
}

function addRequired (x)
{
	x.addClass("required");
}

function removeRequired(x)
{
	x.removeClass("required error");
}

function addRequiredAndStar (x, y)
{
	addRequired(x);
	y.show();
}

function removeRequiredAndStar(x, y)
{
	removeRequired(x);
	y.hide();
}

function isItaly (value)
{
	return value == "Italy";
}

function doNazioneChanged (n, p, divP) 
{
	if (isItaly(n.val())) {
		addRequired(p);
		divP.show();
	}
	else {
		removeRequired(p);
		p.val("");
		divP.hide();
	}
}
function doNazione (n, p, divP)
{
	n.bind("change", function(e) {
		doNazioneChanged (n, p, divP);
	});
	if (!isItaly(n.val())) {
		divP.hide();
	}
}

var cc = ["nazione", "provincia", "citta", "indirizzo", "numero", "cap"];
var mnf = ["tipo_utente", "r_sociale", "f-nazione", "f-citta", "f-indirizzo", "f-numero", "f-cap", "c_fiscale"];
var mni = ["i-nome", "i-cognome", "i-nazione", "i-citta", "i-indirizzo", "i-numero", "i-cap", "i-telefono"];

$(function () 
  {
	var cf = $("#check-fattura"); 
	cf.removeAttr("checked");
	cf.bind("change", function (e) {
		if (cf.attr("checked")) {
			for (var i=0; i<cc.length; i++) {
				var s = cc[i];
				$("#f-" + s).val($("#" + s).val());
			}
			for (var i=0; i<mnf.length; i++) {
				addRequired($("#" + mnf[i]));
			}
			doNazioneChanged($("#f-nazione"), $("#f-provincia"), $("#f-div-provincia"));
			$("#p_iva-star").hide();
		}
		else {
			$("#blocco-fattura input").val("");
			$("#blocco-fattura select").val("");
			for (var i=0; i<mnf.length; i++) {
				removeRequired($("#" + mnf[i]));
			}
			removeRequired($("#p_iva"));
		}			
		$("#blocco-fattura").slideToggle();
	});
	var ci = $("#check-indirizzo");
	ci.removeAttr("checked");	
	ci.bind("change", function (e) {
		if (ci.attr("checked")) {
			for (var i=0; i<mni.length; i++) {
				addRequired($("#" + mni[i]));
			}
			doNazioneChanged($("#i-nazione"), $("#i-provincia"), $("#i-div-provincia"));
		}
		else {
			$("#blocco-indirizzo input").val("");
			$("#blocco-indirizzo select").val("");
			for (var i=0; i<mni.length; i++) {
				removeRequired($("#" + mni[i]));
			}
		}			
		$("#blocco-indirizzo").slideToggle();
	});
	if (!cf.attr("checked")) {
		hideFattura();
	}
	if (!ci.attr("checked")) {
		hideIndirizzo();
	}
	$("#privato").attr("checked", "checked");
	$("#proposte_comm").attr("checked", "checked");
	$("#registrazione").validate({
		rules: {
			password: { minlength: 8},    
			verificapassword: { minlength: 8, equalTo: "#r-password" },
			EMAIL: { equalTo: "#login" }
		}
	});
	doNazione($("#nazione"), $("#provincia"), $("#div-provincia"));
	$("#tipo_utente").bind("change", function (e) {
		var pi = $("#p_iva");
		var pis = $("#p_iva-star")
		switch (this.value) {
		case "1":
			removeRequiredAndStar(pi, pis);
			break;
		case "2":
		case "3":
			addRequiredAndStar (pi, pis);
		}	
	});
	doNazione($("#f-nazione"), $("#f-provincia"), $("#f-div-provincia"));
	$("#p_iva-star").hide();
	doNazione($("#i-nazione"), $("#i-provincia"), $("#i-div-provincia"));
	$("form#registrazione input[type=submit]").removeAttr("disabled"); 
});
