$(document).ready(function(){
	//handler ajax
	$(document).ajaxStart(function() {
		$("div#salesform_loading").show();
	});
	$(document).ajaxStop(function() {
		$("div#salesform_loading").hide();
	});
	$("#salesform_loading>div").css("top",$(window).height()/3);
	//EOF

    $('input[name="tx_salesform_pi1\\[interessatoricevere\\]"]').attr("checked", false);
    if ($.browser.msie && $.browser.version.substr(0,1)<8){
        $("#div_interessato_ricevere div.inputdiv").css("margin-left","0");
    }

	//Cambio del box nazione per visualizzare le province
	listaProvince($('select#tx_salesform_pi1\\[nazione\\]').val());
	$('select#tx_salesform_pi1\\[nazione\\]').change(function(){
		$("select#tx_salesform_pi1\\[provincia\\]").html("");
		$("select#tx_salesform_pi1\\[localita\\]").html("");

		//è italia?
		if ($(this).val() == "112"){
			//ITALIA
			if ($("#tx_salesform_pi1_div_provincia:visible").length == 0){
				$("#tx_salesform_pi1_div_provincia").show();
			}
			$('#tx_salesform_pi1\\[localita_ext\\]').hide();
			$('select#tx_salesform_pi1\\[localita\\]').attr("disabled",true).show();
			listaProvince($(this).val());
		} else {
			//Fuori Italia
			if ($("#tx_salesform_pi1_div_provincia:visible").length == 1){
				$("#tx_salesform_pi1_div_provincia").hide();
			}
			$('#tx_salesform_pi1\\[hidnazione\\]').val($('select#tx_salesform_pi1\\[nazione\\] option:selected').text() );
			listaLocalita($(this).val(),"");
		}
	});

	//cambpio del box provincia per visualizzazione della localita
	$('select#tx_salesform_pi1\\[provincia\\]').change(function(){
		if ($(this).val() == ""){
			$("select#tx_salesform_pi1\\[localita\\]").html("");
			return;
		}
		listaLocalita($('select#tx_salesform_pi1\\[nazione\\]').val(),$(this).val());
	});


    //ricerca dell'ateco
	$("#searchAteco").click(preSearchAteco);
	$("#tx_salesform_pi1\\[ateco\\]").keypress(function(e){
		if (e.which == 13){ //enter
			preSearchAteco();
			return false;
		}
	});

	/*/cambio del selectbox ateco
	$('#tx_salesform_pi1\\[selectAteco\\]').change(function(){
		//decido i campi extra che vengono mostrati
		decidiCampi($(this).val());
		$("div.note").show();
	});*/

    //cambio del box di interesse
    $('#tx_salesform_pi1\\[interessatoa\\]').change(function(){
        switch ($(this).val()){
            case "distribuire":
                $("#div_interessato_distribuire").show();
                $("#div_interessato_ricevere").hide();
                break;
            case "ricevereinfo":
                $("#div_interessato_distribuire").hide();
                $("#div_interessato_ricevere").show();
                break;
            default:
                $("#div_interessato_distribuire").hide();
                $("#div_interessato_ricevere").hide();
                break;
        }
    });
    //click su particolarmente interessato
    $('input[name="tx_salesform_pi1\\[interessatoricevere\\]"]').click(function(){
        $(".extra_interessato_ricevere").hide();
        switch ($(this).val()){
            case "Passepartout":
                $("#extra_aziende").show();
                break;
            case "Businesspass":
            case "Businesspass2":
                $("#extra_professionisti").show();
                break;
            case "Retail":
                $("#extra_negozi").show();
                break;
            case "Welcome":
                $("#extra_alberghi").show();
            case "Beauty":
                $("#extra_centri_benessere").show();
                break;
            case "Menu":
                $("#extra_centri_ristoranti").show();
                break;
            default:
                alert($(this).val());
                break;
        }
    });

	//cambio di gestione paghe
	$("#tx_salesform_pi1\\[gest_paghe\\]").change(function(){
		if ($(this).val() == "Si"){
			$("#div_ced_elaborati").show();
		} else {
			$("#div_ced_elaborati").hide();
		}
	});

	//cambio del select hai conosciuto questo sito tramite
	$("#tx_salesform_pi1\\[conosciuto_tramite\\]").change(function(){
		if ($(this).val() == "1" || $(this).val() == "2"){
			//richieste opzionalità ajax
			$("#sales_conosciuto_tramite_ext").show();
			cercaCampagne($(this).val());
		} else {
			//nascondo extra
			$("#sales_conosciuto_tramite_ext").hide();
		}
	});

    //preparo il post
	$("#sbmbutton").click(function(){
		$(this).hide();
		formSubmit();
		$(this).show();
	});
});
//cerca le campagne in base al settore
function cercaCampagne(campainSector){
	$.post($.ajaxSettings.url, {ajax_request: 1,act:"listaCampagne", settore: campainSector},
	function(data){
		//process(data);
		var output = "<option></option>";
		for (var i in data){
			output += "<option value='" + data[i].id + "'>" + data[i].nome + "</option>";
		}
		$('select#tx_salesform_pi1\\[conosciuto_tramite_ext\\]').html(output);
	},"json");
}

function listaProvince(nazione){
	$.post($.ajaxSettings.url, {ajax_request: 1,act:"listaProvince", oidNazione: nazione},
	function(data){
		//process(data);
		var output = "<option></option>";
		for (var i in data){
			output += "<option value='" + i + "'>" + data[i] + "</option>";
		}
		$('select#tx_salesform_pi1\\[provincia\\]').html(output);
	},"json");
}

function listaLocalita(nazione, provincia){
	//
	$.post($.ajaxSettings.url, {ajax_request: 1,act:"listaLocalita", oidNazione: nazione,oidProvincia:provincia},
	function(data){
		//process(data);
		var output = "<option></option>";
		for (var i in data){
			output += "<option value='" + i + "'>" + data[i] + "</option>";
		}
		if (output.length > 18){
			$('#tx_salesform_pi1\\[localita_ext\\]').hide();
			$('select#tx_salesform_pi1\\[localita\\]').attr("disabled",false).show().html(output).width($('select#tx_salesform_pi1\\[nazione\\]').width());
		} else {
			$('select#tx_salesform_pi1\\[localita\\]').attr("disabled",true).hide();
			$('#tx_salesform_pi1\\[localita_ext\\]').show();
		}
	},"json");
}

//Ricerca del codice ateco
function cercaCodiceAteco(key){
	$.post($.ajaxSettings.url, {ajax_request: 1,act:"codiceAteco", chiave: key},
	function(data){
		//process(data);
		$("#selectAteco").hide().html("");
		if (data.esito == false){
			alert("La descrizione fornita non è sufficiente ad individuare il settore di attività.\nLe chiediamo di non utilizzare parole abbreviate e di descrivere sinteticamente la sua attività senza articoli o preposizioni.\n(ad esempio: NO: \"la mia azienda produce macchine utensili\", SI: \"produzione di macchine utensili\").\nIn caso di ulteriori difficoltà nella compilazione, La invitiamo a contattarci al nostro Numero Verde gratuito 800 232921");
            return;
		}
		var output = ""; //<option></option>";
		for (var i in data.dati){
			output += "<option value='" + data.dati[i].codice + "'>" + data.dati[i].testo + "</option>";
		}
        $('#tx_salesform_pi1\\[selectAteco\\]').html(output).show();
		$('#tx_salesform_pi1\\[lastAtecoSearch\\]').val(key);
		/* decidiCampi($('#tx_salesform_pi1\\[selectAteco\\]').val()); */
		$("div.note").show();
		//adjustAtecoWidth();
	},"json");
}
function preSearchAteco(){
	var chiave = $('#tx_salesform_pi1\\[ateco\\]').val();
	if (chiave == ""){
		alert("Inserire una breve descrizione della propria attività ed eseguire la ricerca per individuare il settore di appartenenza.");
		return false;
	}
	cercaCodiceAteco(chiave);
	return false;
}

//Aggiusta la larghezza di select sotto ie
function adjustAtecoWidth(){
	var maxWidth = 0;
	var maxAllowedWidth = 500;
	var resizeToWidth =0;
	//se non è ie=>ritorno?
	if (!$.browser.msie){
		return;
	}
	$('body').append("<span id='CurrentOptWidth'></span>");
	$('#tx_salesform_pi1\\[selectAteco\\] option').each(function(){
		$('#CurrentOptWidth').text($(this).text());
		if (parseInt($('#CurrentOptWidth').width()) > maxWidth){
			maxWidth = parseInt($('#CurrentOptWidth').width());
			if (maxWidth>maxAllowedWidth){
				maxWidth = maxAllowedWidth;
			}
		}
	});
	$('#CurrentOptWidth').remove();
	$('#tx_salesform_pi1\\[selectAteco\\]').width(maxWidth);
}
function in_array(what, where ){
	var a=false;
	for(var i=0;i<where.length;i++){
	  if(what == where[i]){
		a=true;
		break;
	  }
	}
	return a;
}
//Verifica del submit
function formSubmit(){

    if (!$("#tx_salesform_pi1\\[privacy\\]").attr("checked")){
		alert("E' necessario esprimere il proprio consenso per il trattamento dei dati personali.");
		return false;
	}
    if (!checkOccupazione()){
        return false;
    }
	if (!checkRequired()){
		alert("E' necessario compilare tutti i campi.");
		return false;
	}
	if (!checkLocalita()){
		alert("Indicare la località di residenza.");
		return false;
	}
	if (!verificaOccupazione()){
		alert("Inserire una breve descrizione della propria attività ed eseguire la ricerca per individuare il settore di appartenenza.");;
		return false;
	}
	if (!verificaCampagna()){
		return false;
	}

    $("#sbmbutton").attr("disabled","disabled");
	//submit della form
	 $.ajax({
		type: "POST",
		url: $.ajaxSettings.url,
		data:$("#salesforce_form").serializeArray(),
		dataType: "json",
		async:false,
		success: function(result){
			if (result.esito){
				document.location = result.thanks_page;
			} else {
				alert("Si è verificato un errore durante l'invio della richiesta. Ci scusiamo per il disagio." + result.msgErr);
			}
		}
	 });
     $("#sbmbutton").attr("disabled","");
}

function checkOccupazione(){
    //è interessato a qualcosa?
    switch ($("#tx_salesform_pi1\\[interessatoa\\]").val()){
        case "distribuire":
            if ($("input[name='tx_salesform_pi1\\[interessatodistribuire\\]\\[\\]']:checked").length == 0){
                alert("Devi selezionare almeno un area d'interesse");
            } else return true;
            break;
        case "ricevereinfo":
            var scelta = $('input[name="tx_salesform_pi1\\[interessatoricevere\\]"]:checked');
            if (scelta.length != 1){
                alert("Devi selezionare un area di interesse");
                return false;
            }
            return true;
            break;
        default:
            alert("Devi selezionare se sei interessato a distribuire oppure ricevere le informazioni sulle soluzioni Passepartout");
            break;
    }
    return false;
}
function checkRequired(){
	var esito = true;
	$("input.required:visible").each(function(){
		if ($(this).val() == ""){
			$(this).addClass("error");
			esito = false;
		} else {
			$(this).removeClass("error");
		}
	});
	return esito;
}

//verifica la correttezza del mezzo & campana
function verificaCampagna(){
	var value = $("#tx_salesform_pi1\\[conosciuto_tramite\\]").val();
	if (value == ""){
		alert("E' necessario specificare come ci hai conosciuto.");
		return false;
	} else if (value == 1 || value == 2){
		//serve Extra
		if ($("#tx_salesform_pi1\\[conosciuto_tramite_ext\\]").val() == ""){
			alert("E' necessario specificare anche attraverso quale mezzo di informazione hai conosciuto Passepartout.");
			return false;
		}
	}
	return true;
}

//verifica se la località è stata inserita correttamente
function checkLocalita(){
	if ($("#tx_salesform_pi1\\[nazione\\]").val() == "112" || $("#tx_salesform_pi1\\[nazione\\]").val() == "191"){
		//è italia o rsm
		if ($("#tx_salesform_pi1\\[localita\\]").val() == "" || $("#tx_salesform_pi1\\[localita\\]").val() == null){
			return false;
		}
	} else {
		//estero
		if ($("#tx_salesform_pi1\\[localita2\\]").val() == "" ){
			return false;
		}
	}
	return true;
}
function verificaOccupazione(){
	var codiceAteco = $("#tx_salesform_pi1\\[selectAteco\\]").val();
	if (codiceAteco == "" || codiceAteco == null){
		return false;
	}
	return true;
}
function mostraInteresse(){
	if ($("#tx_salesform_pi1\\[interessato\\]_1").attr("checked") || (!$("#tx_salesform_pi1\\[interessato\\]_1").attr("checked") && $("#tx_salesform_pi1\\[interessatoInfo\\]_1").attr("checked"))){
		$("#div_particolarmente_interessato").show();
	} else {
		$("#div_particolarmente_interessato").hide();
	}
}
