//*****************************************************************************
// Progetto : Globestar
// Modulo : gshome.js
// Descrizione : funzioni javascript di gestione form in home
//*****************************************************************************/

// -------------------------------------------------------------
// redy : azioni da copiere al caricamento della pagina
// -------------------------------------------------------------
$(document).ready(function() {
		// attiva slideshow visual
		$('.foto').cycle();
		
		// gestione dialog acquisizione pesi e prezzi multipacco
		$( "#dialog-form" ).dialog({
			autoOpen: false,
			height: 300,
			width: 550,
			modal: true,
			buttons: {
				Conferma: function() {
					// controllo riempimento campi
					ok=true;
					tot=0;
					
					// azzera peso pacchi
					for (i=1; i<=9; i++) {$('#peso'+i).val("0");}

					$('.pesopacco').each(function(index) {
						valpacco=$(this).val().replace(",", ".");
						
						val=parseFloat(valpacco);
						if (isNaN(val) || val==0) {
							alert("inserire valore pacco "+(index+1));
							ok=false;
						} else {
							$('#peso'+(index+1)).val(val);
							tot=tot+val;
						}
					});
					if (ok) {
						$('#peso').val(tot.toFixed(1));
						$('#peso').attr("disabled", true);
						calcolacosto();
						$( this ).dialog("close");
					}
				},
				Annulla: function() {
					$('#colli').val(1);
					$('#peso').removeAttr("disabled");
					for (i=1; i<=9; i++) { $('#peso'+i).val("0");}			// azzera peso pacchi
					calcolacosto();																			// ricalcolo prezzo singolo pacco

					$( this ).dialog( "close" );
				}
				}
			});
});

// -------------------------------------------------------------
// refreshform() : gestione modifica selezione form
// -------------------------------------------------------------
function refreshform() {
	$.post(
			"ajax_refreshform.php"
		,	{ nmit: $('#nazionemit').val()
			, ndes: $('#nazionedes').val()
			, titr: $('#idatitr').val()
			, dest: $('#idadest').val()
			, velo: $('#idaveco').val()	}
		, function(retval) {
			var obj = jQuery.parseJSON(retval);
			
			// refresh lov nazioni destinazione
			$('#nazionedes option').remove();
			$('#nazionedes').append(obj.optnazdes);
			
			// refresh lov tipo trattamento
			$('#idatitr option').remove();
			$('#idatitr').append(obj.opttiptra);
			
			// refresh lov destinazioni
			$('#idadest option').remove();
			$('#idadest').append(obj.optdest);

			// refresh lov velocità di consegna
			$('#idaveco option').remove();
			$('#idaveco').append(obj.optvelcon);

			calcolacosto();
		} 
	);
}

// -------------------------------------------------------------
// calcolacosto() : lancia richiesta AJAX di calcolo costo spedizione
// -------------------------------------------------------------
function calcolacosto() {
	// chiamata ajax per il calcolo del costo
	
		var retval = $.ajax({
				url: "ajax_calcola.php",
				global: false,
				type: "POST",
				data: { nmit: $('#nazionemit').val()
							, ndes: $('#nazionedes').val()
							, titr: $('#idatitr').val()
							, dest: $('#idadest').val()
							, velo: $('#idaveco').val()
							, col: $('#colli').val()
							, pes: $("#peso").val()
							, pes1: $("#peso1").val()
							, pes2: $("#peso2").val()
							, pes3: $("#peso3").val()
							, pes4: $("#peso4").val()
							, pes5: $("#peso5").val()
							, pes6: $("#peso6").val()
							, pes7: $("#peso7").val()
							, pes8: $("#peso8").val()
							, pes9: $("#peso9").val()
							, fun: 'calcolacosto1'
							}, 
				dataType: "html",
				async:false,
				success: function(retval){
				}
		 }).responseText;

	if (retval!="no") {
		$('#valcost').html("&euro; "+retval);
		$('#prezzo').val(retval);
	}
	return false;
}
// -------------------------------------------------------------
// costopacco() : onchange input text peso - lancia richiesta AJAX di calcolo costo spedizione singolo pacco
// -------------------------------------------------------------
function costopacco(pacco) {
	// chiamata ajax per il calcolo del costo
	if (isNaN(parseFloat($("#pacco"+pacco).val()))) {
		return false;
	};

	var retval = $.ajax({
      url: "ajax_calcola.php",
      global: false,
      type: "POST",
      data: { nmit: $('#nazionemit').val()
            , ndes: $('#nazionedes').val()
            , titr: $('#idatitr').val()
            , dest: $('#idadest').val()
            , velo: $('#idaveco').val()
						, col: 1
						, pes: $("#pacco"+pacco).val()
						, fun: 'costopacco'
						}, 
      dataType: "html",
      async:false,
      success: function(retval){
      }
   }).responseText;

	if (retval!="no") {
		$("#prezzopacco"+pacco).html('&euro; '+retval+' ');
	}
	
	return false;
}

// -------------------------------------------------------------
// numeropacchi() : onchange LOV colli - gestione spedizione multipacco
// -------------------------------------------------------------
function numeropacchi() {
	if ($('#colli').val()==1) {
		// selezionato 1 collo
		$('#peso').removeAttr("disabled");
		for (i=1; i<=9; i++) { $('#peso'+i).val("0");}			// azzera peso pacchi
		calcolacosto();																			// ricalcolo prezzo singolo pacco
		
	} else {
		// selezionati più colli
		for (i=1; i<=$('#colli').val(); i++) {
			val=$('#peso'+i).val();
			// calcolo prezzo per pesi già valorizzati
			if (val>0) {
				var retval = $.ajax({
						url: "ajax_calcola.php",
						global: false,
						type: "POST",
            data: { nmit: $('#nazionemit').val()
                  , ndes: $('#nazionedes').val()
                  , titr: $('#idatitr').val()
                  , dest: $('#idadest').val()
                  , velo: $('#idaveco').val()
									, col: 1
									, pes: $("#peso"+i).val()
									, i: "#pacco"+i
									, fun: "numeropacchi"
									}, 
						dataType: "html",
						async:false,
						success: function(retval){
						}
				 }).responseText;
				prezzo=parseFloat(retval).toFixed(2);
			} else {
				prezzo=0;
			}

			// prepara FORM
			val=parseFloat(val).toFixed(1);
			if (i==1) {
				$("#dialog-form fieldset").html('<label for="pacco'+i+'">Pacco '+i+'</label> : ');
			} else {
				$("#dialog-form fieldset").append('<br /><label for="pacco'+i+'">Pacco '+i+'</label> : ');
			}
			$("#dialog-form fieldset").append(' Peso <input type="text" name="pacco'+i+'" id="pacco'+i+'" value="'+val+'" onchange="costopacco('+i+');" class="pesopacco text ui-widget-content ui-corner-all" />');
			$("#dialog-form fieldset").append(' Prezzo <span id="prezzopacco'+i+'">€ '+prezzo+'</span><br />');
		}

		$("#dialog-form" ).dialog({height: 130+(42*$('#colli').val())});
		$(".dialog-conferma, .dialog-annulla, ").button();
		$("#dialog-form").dialog( "open" );
	}
}


