var indirizzo_partenza=new Array();
var indirizzo_arrivo=new Array();
var lista_foto=new Array();
var indice_partenza=indice_arrivo=-1;
var dettagli_partenza_nazione=new Array();
var dettagli_partenza_localita=new Array();
var dettagli_partenza_cap=new Array();
var dettagli_partenza_provincia=new Array();
var dettagli_partenza_via=new Array();
var dettagli_partenza_coordinate=new Array();
var dettagli_arrivo_nazione=new Array();
var dettagli_arrivo_localita=new Array();
var dettagli_arrivo_cap=new Array();
var dettagli_arrivo_provincia=new Array();
var dettagli_arrivo_via=new Array();
var dettagli_arrivo_coordinate=new Array();
var dettagli_arrivo_accuratezza=new Array();
var dettagli_partenza_accuratezza=new Array();
var link='$("#id_partenza").hide();';
var link_out='$("#id_dett_partenza").hide();';
var linka='$("#id_arrivo").hide();';
var linka_out='$("#id_dett_arrivo").hide();';
var ok_partenza=ok_arrivo=false;
var mappa=false;
var val_undefined;

function  controlla_partenza() {
	pulisci();
	ok_partenza=false;
	var indirizzo=document.dati_viaggio.partenza.value;
	if(indirizzo) {
		var x=new GClientGeocoder();
		x.getLocations(indirizzo,addAddressToMap_p);
	}
}
function  controlla_arrivo() {
	pulisci();
	ok_arrivo=false;
	var indirizzo=document.dati_viaggio.arrivo.value;
	if(indirizzo) {
		var x=new GClientGeocoder();
		x.getLocations(indirizzo,addAddressToMap_a);
	}
/*	if (GBrowserIsCompatible()) {
		var map = new
		GMap2(document.getElementById("id_test"));
		map.setCenter(new GLatLng(37.4419, -122.1419), 13);
	}
	*/
}

function addAddressToMap_p(response) {
	ok_partenza=false;
	//Verifica se il geodecoder ha trovato una soluzione
	if (!response || response.Status.code != 200) {
		alert("Errore, indirizzo non trovato");
	} else {
		//ok.. quante sono?
		var quanti=response.Placemark.length;
		var tmp='';
		$.each(response.Placemark,function(i) {
			indirizzo_partenza[i]=this.address;
			var nazione=this.AddressDetails.Country.CountryName;
			if(this.AddressDetails.Country.AdministrativeArea && this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea) {
				var provincia=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.SubAdministrativeAreaName;
				if(this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality) {
					var localita=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.LocalityName;
					if(this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.Thoroughfare) {
						var via=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.Thoroughfare.ThoroughfareName;
					}else {
						var via='';
					}
					if(this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode) {
						var cap=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode.PostalCodeNumber;
					}else{
						var cap='';
					}

				}else {
					var localita='';
					var via='';

				}
			}else  if(this.AddressDetails.Country.AdministrativeArea && this.AddressDetails.Country.AdministrativeArea.Locality) {
				var provincia=this.AddressDetails.Country.AdministrativeArea.AdministrativeAreaName;
				if(this.AddressDetails.Country.AdministrativeArea.Locality) {
					var localita=this.AddressDetails.Country.AdministrativeArea.Locality.LocalityName;
					if(this.AddressDetails.Country.AdministrativeArea.Locality.Thoroughfare) {
						var via=this.AddressDetails.Country.AdministrativeArea.Locality.Thoroughfare.ThoroughfareName;
					}else {
						var via='';
					}
					if(this.AddressDetails.Country.AdministrativeArea.Locality.PostalCode) {
						var cap=this.AddressDetails.Country.AdministrativeArea.Locality.PostalCode.PostalCodeNumber;
					}else{

						var cap='';
					}
				}
			}else {
				var localita='';
				var cap='';
				var provincia='';
				var via='';
			}
			dettagli_partenza_nazione[i]=nazione;
			dettagli_partenza_localita[i]=localita;
			dettagli_partenza_cap[i]=cap;
			dettagli_partenza_provincia[i]=provincia;
			dettagli_partenza_via[i]=via;
			dettagli_partenza_coordinate[i]=this.Point.coordinates;
			dettagli_partenza_accuratezza[i]=this.AddressDetails.Accuracy;
			if(quanti>1)tmp+="<li><a href='#' onclick='ins_indirizzo_partenza("+i+");"+link+" return false;' onmouseover='vis_dett_partenza("+i+");' onmouseout='"+link_out+";'>"+this.address+"</a><br>";
		});
		if(quanti>1) {
			if(quanti==10) tmp+="<br><center><a href='#' onclick='return false;'>Attenzione, ci sono pi&ugrave; di 10 risultati.</a></center>";
			tmp+="<br><center><a href='#' onclick=$('#id_partenza').hide();>Chiudi finestra</a></center><br>\n";
			$('#id_partenza').html(tmp);
			$('#id_partenza').show();
		}else {
			indice_partenza=0;
			ins_indirizzo_partenza(indice_partenza);
		}
	}
}
function addAddressToMap_a(response) {
	ok_arrivo=false;
	//Verifica se il geodecoder ha trovato una soluzione
	if (!response || response.Status.code != 200) {
		alert("Sorry, we were unable to geocode that address");
	} else {
		//ok.. quante sono?
		var quanti=response.Placemark.length;
		var tmp='';
		$.each(response.Placemark,function(i) {
			indirizzo_arrivo[i]=this.address;
			var nazione=this.AddressDetails.Country.CountryName;
			if(this.AddressDetails.Country.AdministrativeArea &&  this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea) {
				var provincia=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.SubAdministrativeAreaName;
				if(this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality) {
					var localita=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.LocalityName;
					if(this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.Thoroughfare) {
						var via=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.Thoroughfare.ThoroughfareName;
					}else {
						var via='';
					}
					if(this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode) {
						var cap=this.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode.PostalCodeNumber;
					}else{
						var cap='';
					}

				}else {
					var localita='';
					var cap='';
					var provincia='';
					var via='';

				}
			}else  if(this.AddressDetails.Country.AdministrativeArea && this.AddressDetails.Country.AdministrativeArea.Locality) {
				var provincia=this.AddressDetails.Country.AdministrativeArea.AdministrativeAreaName;
				if(this.AddressDetails.Country.AdministrativeArea.Locality) {
					var localita=this.AddressDetails.Country.AdministrativeArea.Locality.LocalityName;
					if(this.AddressDetails.Country.AdministrativeArea.Locality.Thoroughfare) {
						var via=this.AddressDetails.Country.AdministrativeArea.Locality.Thoroughfare.ThoroughfareName;
					}else {
						var via='';
					}
					if(this.AddressDetails.Country.AdministrativeArea.Locality.PostalCode) {
						var cap=this.AddressDetails.Country.AdministrativeArea.Locality.PostalCode.PostalCodeNumber;
					}else{
						var cap='';
					}
				}
			}else {
				var localita='';
				var cap='';
				var provincia='';
				var via='';
			}
			dettagli_arrivo_nazione[i]=nazione;
			dettagli_arrivo_localita[i]=localita;
			dettagli_arrivo_cap[i]=cap;
			dettagli_arrivo_provincia[i]=provincia;
			dettagli_arrivo_via[i]=via;
			dettagli_arrivo_coordinate[i]=this.Point.coordinates;
			dettagli_arrivo_accuratezza[i]=this.AddressDetails.Accuracy;
			if(quanti>1)tmp+="<li><a href='#' onclick='ins_indirizzo_arrivo("+i+");"+linka+" return false;' onmouseover='vis_dett_arrivo("+i+");' onmouseout='"+linka_out+";'>"+this.address+"</a><br>\n";
		});
		if(quanti>1) {
			if(quanti==10) tmp+="<br><center><a href='#' onclick='return false;'>Attenzione, ci sono pi&ugrave; di 10 risultati.</a></center><br>\n";
			var l="$('#id_arrivo').hide();";
			tmp+="<br><center><a href='#' onclick=$('#id_arrivo').hide();>Chiudi finestra</a></center><br>\n";
			$('#id_arrivo').html(tmp);
			$('#id_arrivo').show();
		}else {
			indice_arrivo=0;
			ins_indirizzo_arrivo(indice_arrivo);
		}

	}
}
function ins_indirizzo_partenza(indice) {
	if(dettagli_partenza_accuratezza[indice]==9 && !dettagli_partenza_via[indice]) {
		alert("Indirizzo di partenza errato");
	}else {
		document.dati_viaggio.partenza.value=indirizzo_partenza[indice];
		indice_partenza=indice;
		ok_partenza=true;
	}
}
function vis_dett_partenza(indice) {
	var tmp="";
	if(dettagli_partenza_nazione[indice])tmp+="Nazione:"+dettagli_partenza_nazione[indice]+"<br>";
	if(dettagli_partenza_provincia[indice])tmp+="Provincia:"+dettagli_partenza_provincia[indice]+"<br>";
	if(dettagli_partenza_cap[indice])tmp+="CAP:"+dettagli_partenza_cap[indice]+"<br>";
	if(dettagli_partenza_localita[indice])tmp+="localit&agrave;:"+dettagli_partenza_localita[indice]+"<br>";
	if(dettagli_partenza_via[indice])tmp+="Indirizzo:"+dettagli_partenza_via[indice]+"<br>";

	$("#id_dett_partenza").html(tmp);
	$("#id_dett_partenza").show();
}
function ins_indirizzo_arrivo(indice) {
	if(dettagli_arrivo_accuratezza[indice]==9 && !dettagli_arrivo_via[indice]) {
		alert("Indirizzo di arrivo errato");
	}else {
		document.dati_viaggio.arrivo.value=indirizzo_arrivo[indice];
		indice_arrivo=indice;
		ok_arrivo=true;
	}
}
function vis_dett_arrivo(indice) {
	var tmp="";
	if(dettagli_arrivo_nazione[indice])tmp+="Nazione:"+dettagli_arrivo_nazione[indice]+"<br>";
	if(dettagli_arrivo_provincia[indice])tmp+="Provincia:"+dettagli_arrivo_provincia[indice]+"<br>";
	if(dettagli_arrivo_cap[indice])tmp+="CAP:"+dettagli_arrivo_cap[indice]+"<br>";
	if(dettagli_arrivo_localita[indice])tmp+="localit&agrave;:"+dettagli_arrivo_localita[indice]+"<br>";
	if(dettagli_arrivo_via[indice])tmp+="Indirizzo:"+dettagli_arrivo_via[indice]+"<br>";

	$("#id_dett_arrivo").html(tmp);
	$("#id_dett_arrivo").show();
}
function dis_mappa() {
	pulisci();
	if(ok_partenza && ok_arrivo) {
		var map = new GMap2(document.getElementById("id_mappa"));
		map.addControl(new GSmallMapControl());
		mappa=true;
		$('#id_mappa').fadeIn('fast');
		directions = new GDirections(map);
   		directions.load("from: "+document.dati_viaggio.partenza.value+" to: "+ document.dati_viaggio.arrivo.value);
   		setTimeout("if(directions.getNumRoutes()==0)alert('Itinerario valido ma non visualizzabile')",5000);
   		ok_partenza=ok_arrivo=true;
	}else {
		alert("Mancano la partenza o l'arrivo");
	}
}
function cerca_itinerario() {
	//if(ok_partenza || ok_arrivo) {
		var r=Math.random(0,10000000);
		//prendere i dati...
		var c_partenza=c_arrivo=i_partenza=i_arrivo=acc_partenza=acc_arrivo='';
		if(ok_partenza)	{
			c_partenza=new String(dettagli_partenza_coordinate[indice_partenza]);
			i_partenza=indirizzo_partenza[indice_partenza];
			acc_partenza=dettagli_partenza_accuratezza[indice_partenza];
		}
		if(ok_arrivo) {
			c_arrivo=new String(dettagli_arrivo_coordinate[indice_arrivo]);
			i_arrivo=indirizzo_arrivo[indice_arrivo];
			acc_arrivo=dettagli_arrivo_accuratezza[indice_arrivo];
		}
		$.each(visitati,function(i){
			visitati[i]=false;

		});
		$('#loading').fadeIn('fast');
		$('#id_lista').load('jq/jq_ric_itinerario.php?r='+r,{c_partenza:c_partenza,c_arrivo:c_arrivo,i_partenza:i_partenza,
		i_arrivo:i_arrivo,accuratezza_partenza:acc_partenza,accuratezza_arrivo:acc_arrivo,
		offro_passaggio:document.dati_viaggio.offro_passaggio[document.dati_viaggio.offro_passaggio.selectedIndex].value,
		tipo_passaggio:document.dati_viaggio.tipo_passaggio[document.dati_viaggio.tipo_passaggio.selectedIndex].value,
		tipo_richiesta:document.dati_viaggio.tipo_richiesta[document.dati_viaggio.tipo_richiesta.selectedIndex].value
		},function() {
			$('#loading').fadeOut('fast');
		});


//	}else{
//		alert("Nessun indirizzo inserito");
//	}
}

function pulisci() {
	$("#id_dett_partenza").hide();
	$("#id_dett_arrivo").hide();
	$("#id_partenza").hide();
	$("#id_arrivo").hide();
}
var visitati=new Array();
function vis_itinerari(ric) {
	var r=Math.random(0,10000000);
	if(ric==0) {
		$('#id_lista').load('jq/jq_ric_itinerario.php?r='+r);
	}
}
function load_form() {
	var r=Math.random(0,10000000);
	$('#id_login').load('jq/form.php?r='+r);
}
function logout() {
	var r=Math.random(0,10000000);
	var r1=Math.random(0,10000000);
	$.post('jq/logout.php?r='+r,{},function(data) {
		if(data=='OK') {
			location.href='/';
		}else{
			alert("Errore di sistema, logout non riuscito");
			alert(data);
		}
	});
}
function login() {
	var r=Math.random(0,10000000);
	var r1=Math.random(0,10000000);
	if(!document.form_login.nickname.value || !document.form_login.passwd.value) {
		alert("Inserire il nickname e la password");
	}else {
		$.post('jq/login.php?r='+r,{nickname:document.form_login.nickname.value, passwd:document.form_login.passwd.value},function(data) {
			if(data=='OK') {
				//$('#id_login').load('jq/form.php?r='+r1);
				location.href='/';
			}else if (data=='PS'){
				alert("Nickname o password errati");
			}else {
				alert("Errore di sistema, login non riuscito");
			}
		});
	}
}
function vis_scheda_itinerario(id) {
	//visualizzazione itinerario..
	//prima si deve caricare la scheda
	var id_scheda='#finestra_'+id;
	var id_riga='#id_itinerario_'+id;

	var id_mappa_scheda='id_mappa_scheda_'+id;
	$(id_scheda).toggle('slow',function() {
		pulisci_schede(id);
		if(!visitati[id]) {
			//callback apertura finestra
			//richiamare la pagina via ajax
			var r=Math.random(0,10000000);

			$(id_scheda).load('jq/jq_scheda_it.php?r='+r,{id:id,ar:0},function() {
				//callback che richiama google map
				var partenza=document.getElementById('var_partenza_'+id).value;
				var arrivo=document.getElementById('var_arrivo_'+id).value;
				var map = new GMap2(document.getElementById(id_mappa_scheda));
				map.addControl(new GSmallMapControl());
				$('#'+id_mappa_scheda).fadeIn('fast');
				directions = new GDirections(map);
		   		directions.load("from: "+partenza+" to: "+ arrivo);
		   		setTimeout("if(directions.getNumRoutes()==0)alert('Itinerario valido ma non visualizzabile')",2000);

			});
			visitati[id]=true;
		}
	});
}
function vis_scheda_itinerario_ar(id) {
	//visualizzazione itinerario..
	//prima si deve caricare la scheda
	var id_scheda='#finestra_'+id;
	var id_riga='#id_itinerario_'+id;

	var id_mappa_scheda='id_mappa_scheda_'+id;
	$(id_scheda).toggle('slow',function() {
		pulisci_schede(id);
		if(!visitati[id]) {
			//callback apertura finestra
			//richiamare la pagina via ajax
			var r=Math.random(0,10000000);

			$(id_scheda).load('jq/jq_scheda_it.php?r='+r,{id:id,ar:1},function() {
				//callback che richiama google map
				var partenza=document.getElementById('var_partenza_'+id).value;
				var arrivo=document.getElementById('var_arrivo_'+id).value;
				var map = new GMap2(document.getElementById(id_mappa_scheda));
				map.addControl(new GSmallMapControl());
				$('#'+id_mappa_scheda).fadeIn('fast');
				directions = new GDirections(map);
		   		directions.load("from: "+partenza+" to: "+ arrivo);
		   		setTimeout("if(directions.getNumRoutes()==0)alert('Itinerario valido ma non visualizzabile')",2000);

			});
			visitati[id]=true;
		}
	});
}
function ricarica_scheda(id,ar) {
		//visualizzazione itinerario..
	//prima si deve caricare la scheda
	var id_scheda='#finestra_'+id;
	var id_riga='#id_itinerario_'+id;

	var id_mappa_scheda='id_mappa_scheda_'+id;
	//callback apertura finestra
	//richiamare la pagina via ajax
	var r=Math.random(0,10000000);

	$(id_scheda).load('jq/jq_scheda_it.php?r='+r,{id:id,ar:ar},function() {
		//callback che richiama google map
		var partenza=document.getElementById('var_partenza_'+id).value;
		var arrivo=document.getElementById('var_arrivo_'+id).value;
		var map = new GMap2(document.getElementById(id_mappa_scheda));
		map.addControl(new GSmallMapControl());
		$('#'+id_mappa_scheda).fadeIn('fast');
		directions = new GDirections(map);
   		directions.load("from: "+partenza+" to: "+ arrivo);
   		setTimeout("if(directions.getNumRoutes()==0)alert('Itinerario valido ma non visualizzabile')",2000);

	});
}
function salva_dati() {
	var uscita='';
	if (indice_arrivo<0 || indice_partenza<0 || !ok_partenza || !ok_arrivo) uscita+="Errore nell'itinerario prescelto\n";
	if(!document.dati_viaggio.validofinoal.value)uscita+="Manca la data di validità\n";
	if(!document.dati_viaggio.note.value)uscita+="Mancano le note\n";
	if(document.dati_viaggio.tipo_richiesta.selectedIndex==0 && !document.dati_viaggio.nome_oggetto.value) uscita+="Inserire almeno la descrizione breve dell'oggetto\n";
	if(uscita) {
		alert(uscita);
		return false;
	}else {
		$('#id_barra_edit').show('fast',function() {
			//passaggio dati...
			var coord_arrivo=new String(dettagli_arrivo_coordinate[indice_arrivo]);
			var coord_partenza=new String(dettagli_partenza_coordinate[indice_partenza]);

			document.dati_viaggio.comando.value='nuovo_itinerario';
			document.dati_viaggio.accuratezza_arrivo.value=dettagli_arrivo_accuratezza[indice_arrivo];
			document.dati_viaggio.accuratezza_partenza.value=dettagli_partenza_accuratezza[indice_partenza];
			document.dati_viaggio.coord_partenza.value=coord_partenza;
			document.dati_viaggio.coord_arrivo.value=coord_arrivo;
			var options = {
		        success:       risposta_salva_dati  // post-submit callback
	    	};

	    	$('#id_form_ricerca').ajaxSubmit(options);
	    	return false;
		});

	}
}




function risposta_salva_dati(responseText, statusText) {
	//alert(responseText); //debug...
	$('#id_barra_edit').hide('fast',function() {
		if(responseText!='OK' && responseText!='OKIMG' && responseText!='OKBUTIMG') {
			if(responseText=='DATA') {
				 alert("data errata o non valida (la validità  è al massimo di 1 anno o è antecedente alla data odierna)");
			}else {
	        	alert("Errore nella memorizzazione");
			}
		}else{
			$('#id_form_ricerca').resetForm();
			mappa=ok_partenza=ok_arrivo=false;
			if(responseText=='OK') {
				alert("Memorizzazione itinerario effettuata");
				location.href=document.dati_viaggio.reload.value;
			}else if(responseText=='OKIMG') {
				alert("Memorizzazione itinerario effettuata\nInserita foto dell'oggetto per il baratto");
				location.href=document.dati_viaggio.reload.value;
			}else if(responseText=='OKBUTIMG') {
				alert("Memorizzazione itinerario effettuata\nErrore nellinserimento della foto (file inesistente o non jpg).");
				location.href=document.dati_viaggio.reload.value;
			}else {
				alert("Errore di sistema, codice "+responseText);
			}
		}
		return false;
	});
}
function clear_form() {
	$('#id_form_ricerca').resetForm();
	mappa=ok_partenza=ok_arrivo=false;
}
//modifiche area riservata
function canc_auth_email() {
	if(confirm("Cancellare la richiesta di cambio email?")) {
		//abbastanza semplice...
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?r='+r,{comando: 'canc_auth_email'},function(data) {
			if(data=='OK') {
				//reload della pagina
				location.href=document.dati_utente.reload.value;

			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function aggiorna_dati_utente() {
	var uscita='';
	var r=Math.random(0,10000000);
	if(!document.dati_utente.nominativo.value)uscita+="Manca il nominativo\n";
	if(!document.dati_utente.email.value){
		uscita+="Manca l'email\n";
	}else {
		var email=document.dati_utente.email.value;
		var controllo=email.match(/^.+\@(\[?)[-a-zA-Z0-9.]+\.([a-zA-Z]{2,4}|[0-9]{2,4})(\]?)$/);
		var controllone;
		if(controllo==controllone)uscita+="L'email è errata\n";
	}
	if(!document.dati_utente.passwd.value)uscita+="Manca la password\n";
	if(uscita) {
		alert(uscita);
	}else if(confirm("confermi i seguenti dati:\nNominativo "+document.dati_utente.nominativo.value+"\nEmail:"+document.dati_utente.email.value+"\nPassword:"+document.dati_utente.passwd.value+"  ?")&& (document.dati_utente.email.value==document.dati_utente.email_old.value || confirm("Confermi il cambio di email?\n Una richiesta di autorizzazione sarà inviata alla nuova casella"))){
		$.post('jq/edit.php?r='+r,{comando: 'aggiorna_dati_utente',
		email:document.dati_utente.email.value,
		nominativo:document.dati_utente.nominativo.value,
		passwd:document.dati_utente.passwd.value,
		email_old:document.dati_utente.email_old.value,
		contatti:document.dati_utente.contatti.value
		},function(data) {
			if(data=='OK') {
				//reload della pagina
				if(document.dati_utente.email.value!=document.dati_utente.email_old.value)alert("E' stata inviata una richiesta di autorizzazione per l'email "+ document.dati_utente.email.value+"\nFino a tale conferma resterà valida l'email precedente, ovvero "+document.dati_utente.email_old.value);
				location.href=document.dati_utente.reload.value;

			}else if(data=='KOEMAIL') {
				alert("Email errata o già in uso da altro utente");
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function click_veicolo() {
	var idx=document.form_veicoli.quale_veicolo[document.form_veicoli.quale_veicolo.selectedIndex].value;
	$('#id_foto_auto').attr({src:lista_foto[idx]});
	if(idx!=0) {
		document.form_veicoli.nome_veicolo.value=document.form_veicoli.quale_veicolo[document.form_veicoli.quale_veicolo.selectedIndex].text;
		$('#id_bottone_cancella_f').show();
		$('#id_bottone_cancella_v').show();
	}else {
		document.form_veicoli.nome_veicolo.value='';
		$('#id_bottone_cancella_f').hide();
		$('#id_bottone_cancella_v').hide();
	}

}
function invia_dati_veicolo() {
	//controlliamo se c'è almeno il nome
	if(!document.form_veicoli.nome_veicolo.value) {
		alert("Manca il nome del veicolo\n");
		return false;
	}else {
		//inviare tutto il pacco tramite jq_form
		if(document.form_veicoli.quale_veicolo.selectedIndex==0) {
			document.form_veicoli.comando.value='dati_veicolo_ins'; //ci penserà php
		}else {
			document.form_veicoli.comando.value='dati_veicolo'; //ci penserà php
		}
		$('#id_barra_edit').show('fast',function() {
			//passaggio dati...
			var options = {
		        success:       risposta_salva_dati_veicolo  // post-submit callback
	    	};
	    	$('#id_form_veicoli').ajaxSubmit(options);
	    	return false;
		});

	}
}
function risposta_salva_dati_veicolo(responseText, statusText) {
	$('#id_barra_edit').hide('fast',function() {
		if(responseText=='OK') {
			alert("Modifica dati veicolo effettuata");
			location.href=document.dati_utente.reload.value;
		}else if(responseText=='OKIMG') {
			alert("Modifica dati veicolo effettuata\nInviata foto del veicolo");
			location.href=document.dati_utente.reload.value;
		}else if(responseText=='OKBUTIMG') {
			alert("Modifica dati veicolo effettuata\nErrore nellinserimento della foto (file inesistente o non jpg).");
		}else if(responseText=='OKBUTIMG') {
			alert("Errore di sistema");
		}else{
			alert("Errore di sistema, codice "+responseText);
		}
	});

}
function cancella_foto() {
	if(confirm("Cancellare la foto del veicolo selezionato ?")) {
		var r=Math.random(0,10000000);
		var idv=document.form_veicoli.quale_veicolo[document.form_veicoli.quale_veicolo.selectedIndex].value;
		$.post('jq/edit.php?r='+r,{
		comando:'cancella_foto',
		id:idv
		},function(data) {
			if(data=='OK') {
				lista_foto[idv]='immagini/bianco.gif'
				click_veicolo();
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function cancella_veicolo() {
	if(confirm("Cancellare DEFINITIVAMENTE il veicolo selezionato ?")) {
		var r=Math.random(0,10000000);
		var idv=document.form_veicoli.quale_veicolo[document.form_veicoli.quale_veicolo.selectedIndex].value;
		$.post('jq/edit.php?r='+r,{
		comando:'cancella_veicolo',
		id:idv
		},function(data) {
			if(data=='OK') {
				location.href=document.dati_utente.reload.value;
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function mod_itinerario(id) {
	//brutto ma funziona
	var p=document.getElementById('id_tmp_form_'+id);
	p.id.value=id;
	p.action='mod_proposta.php';
	p.submit();
}
function inizio_mod_proposta(offro_passaggio,tipo_passaggio,tipo_richiesta,pendolare) {
	//rendere buoni gli indirizzi
	controlla_partenza();
	controlla_arrivo();
	//offro o cerco?
	if(offro_passaggio=='t') {
		document.dati_viaggio.offro_passaggio.selectedIndex=0;
		$('#id_riga_veicolo').show()
	}else {
		document.dati_viaggio.offro_passaggio.selectedIndex=1;
		$('#id_riga_veicolo').hide()
	}
	switch(tipo_passaggio) {
		case "P":
			document.dati_viaggio.tipo_passaggio.selectedIndex=0;
		break;
		case "V":
			document.dati_viaggio.tipo_passaggio.selectedIndex=1;
		break;
		case "U":
			document.dati_viaggio.tipo_passaggio.selectedIndex=2;
		break;
	}
	switch(tipo_richiesta) {
		case "B":
			document.dati_viaggio.tipo_richiesta.selectedIndex=0;
			$('#id_riga_baratto').fadeIn()
		break;
		case "R":
			document.dati_viaggio.tipo_richiesta.selectedIndex=1;
			$('#id_riga_baratto').fadeOut()
		break;
		case "A":
			document.dati_viaggio.tipo_richiesta.selectedIndex=2;
			$('#id_riga_baratto').fadeOut()
		break;
	}
	$('#id_form_ricerca').css('visibility','visible');
}
function modifica_dati_itinerario() {
	var uscita='';
	if (indice_arrivo<0 || indice_partenza<0 || !ok_partenza || !ok_arrivo) uscita+="Errore nell'itinerario prescelto\n";
	if(!document.dati_viaggio.validofinoal.value)uscita+="Manca la data di validità\n";
	if(!document.dati_viaggio.note.value)uscita+="Mancano le note\n";
	if(document.dati_viaggio.tipo_richiesta.selectedIndex==0 && !document.dati_viaggio.nome_oggetto.value) uscita+="Inserire almeno la descrizione breve dell'oggetto\n";
	if(uscita) {
		alert(uscita);
		return false;
	}else {
		$('#id_barra_edit').show('fast',function() {
			//passaggio dati...
			var coord_arrivo=new String(dettagli_arrivo_coordinate[indice_arrivo]);
			var coord_partenza=new String(dettagli_partenza_coordinate[indice_partenza]);

			document.dati_viaggio.comando.value='modifica_itinerario';
			document.dati_viaggio.accuratezza_arrivo.value=dettagli_arrivo_accuratezza[indice_arrivo];
			document.dati_viaggio.accuratezza_partenza.value=dettagli_partenza_accuratezza[indice_partenza];
			document.dati_viaggio.coord_partenza.value=coord_partenza;
			document.dati_viaggio.coord_arrivo.value=coord_arrivo;
			var options = {
		        success:       risposta_modifica_dati_itinerario  // post-submit callback
	    	};

	    	$('#id_form_ricerca').ajaxSubmit(options);
	    	return false;
		});

	}
}




function risposta_modifica_dati_itinerario(responseText, statusText) {
	//alert(responseText); //debug...
	$('#id_barra_edit').hide('fast',function() {
		if(responseText!='OK' && responseText!='OKIMG' && responseText!='OKBUTIMG') {
			if(responseText=='DATA') {
				 alert("data errata o non valida (la validità  è al massimo di 1 anno o è antecedente alla data odierna)");
			}else {
	        	alert("Errore nella memorizzazione");
			}
			return false;
		}else{
			if(responseText=='OK') {
				alert("Memorizzazione itinerario effettuata");
			}else if(responseText=='OKIMG') {
				alert("Memorizzazione itinerario effettuata\nInserita foto dell'oggetto per il baratto");
			}else if(responseText=='OKBUTIMG') {
				alert("Memorizzazione itinerario effettuata\nErrore nellinserimento della foto (file inesistente o non jpg).");
			}else {
				alert("Errore di sistema, codice "+responseText);
			}
		}
		return false;
	});
}
function accetta_passeggero(id) {
	var p=document.getElementById('id_tmp_form_'+id);
	if(p.quale_utente_accetta.selectedIndex<0){
		alert("Selezionare un utente");
	}else if(confirm("Accettare l'offerta di "+p.quale_utente_accetta[p.quale_utente_accetta.selectedIndex].text +" ?")){
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?pp='+r,{
			comando:'accetta_passeggero',
			itinerario: id,
			utente: p.quale_utente_accetta[p.quale_utente_accetta.selectedIndex].value
		},function(data) {
			if(data=='OK') {
				alert("Itinerario accettato");
				ricarica_scheda(id,'1');
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function feed_pos(id) {
	var p=document.getElementById('id_tmp_form_'+id);
	if(!p.testo_feed.value) {
		alert("Manca il commento al feedback");
	}else if (confirm("Inviare un feedback POSITIVO con il commento indicato ?")) {
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?pp='+r,{
			comando:'ins_feed',
			itinerario: id,
			testo_feed:p.testo_feed.value,
			tipo_feed: 1
		},function(data) {
			if(data=='OK') {
				alert("Feed inserito");
				ricarica_scheda(id,'1');
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function feed_neg(id) {
	var p=document.getElementById('id_tmp_form_'+id);
	if(!p.testo_feed.value) {
		alert("Manca il commento al feedback");
	}else if (confirm("Inviare un feedback NEGATIVO con il commento indicato ?")) {
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?pp='+r,{
			comando:'ins_feed',
			itinerario: id,
			testo_feed:p.testo_feed.value,
			tipo_feed: -1
		},function(data) {
			if(data=='OK') {
				alert("Feed inserito");
				ricarica_scheda(id,'1');
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function cancella_itinerario() {
	if(confirm("Cancellare l'itinerario in via definitiva ?")) {
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?pp='+r,{
			comando:'cancella_itinerario',
			itinerario: document.dati_viaggio.id.value
		},function(data) {
			if(data=='OK') {
				alert("Itinerario cancellato con successo");
				location.href=document.dati_viaggio.reload.value;
			}else {
				alert("Errore nella procedura");
			}
		});

	}
}
function registra_nuovo_utente() {
	var tabella=document.dati_registrazione;
	var uscita='';
	if (!tabella.nominativo.value)uscita+="Manca il nominativo\n";
	if (!tabella.nickname.value)uscita+="Manca il nickname\n";
	if (!tabella.passwd.value)uscita+="Manca la password\n";
	var email=tabella.email.value;
	var controllo=email.match(/^.+\@(\[?)[-a-zA-Z0-9.]+\.([a-zA-Z]{2,4}|[0-9]{2,4})(\]?)$/);
	var controllone;
	if(controllo==controllone)uscita+="L'email è errata\n";
	if (!tabella.email.value)uscita+="Manca l'email\n";
	if(!tabella.si_privacy.checked)uscita+="Privacy non accettata\n";
	if(uscita) {
		alert(uscita);
	}else if(confirm("Inviare registrazione ?")){
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?r='+r,{comando: 'registra_nuovo_utente',
			email:tabella.email.value,
			nominativo:tabella.nominativo.value,
			passwd:tabella.passwd.value,
			nickname:tabella.nickname.value
		},function(data) {
			if(data=='OK') {
				alert("E' stata inviata una richiesta di autorizzazione all'email "+ tabella.email.value+"\nUna volta seguite le istruzioni presenti nell'email la registrazione sarà completata");
			}else if(data=='KOEMAIL') {
				alert("Email errata o già presente");
			}else if(data=='NICKEX') {
				alert("Il nickname è già presente");
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function invia_dati_accesso() {
	var tabella=document.dati_registrazione;
	var uscita='';
	var email=tabella.email.value;
	var controllo=email.match(/^.+\@(\[?)[-a-zA-Z0-9.]+\.([a-zA-Z]{2,4}|[0-9]{2,4})(\]?)$/);
	var controllone;
	if(controllo==controllone && tabella.email.value)uscita+="L'email è errata\n";
	if (!tabella.email.value && !tabella.nickname.value)uscita+="Inserire almeno un dato\n";
	if(uscita) {
		alert(uscita);
	}else if(confirm("Inviare i dati ?")){
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?r='+r,{comando: 'invia_dati_accesso',
			email:tabella.email.value,
			nickname:tabella.nickname.value
		},function(data) {
			if(data=='OK') {
				alert("Il reminder è stato inviato all'email indicata nella registrazione");
			}else if(data=='KOTR') {
				alert("Email o nickname non trovati");
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function cancella_utente() {
	if(confirm("Attenzione: cancellare definitivamente la tua iscrizione ?")) {
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?r='+r,{comando: 'cancella_utente'
		},function(data) {
			if(data=='OK') {
				alert("Iscrizione cancellata con successo");
				location.href=document.dati_utente.reloadcanc.value;
			}else {
				alert("Errore nella procedura");
			}
		});
	}
}
function invia_richiesta_prenotazione(viaggio){
	if(confirm("Inviare una richiesta di prenotazione al tripper per questo itinerario ?")) {
		var r=Math.random(0,10000000);
		$.post('jq/edit.php?r='+r,{comando: 'invia_richiesta_prenotazione',
			viaggio:viaggio
		},function(data) {
			if(data=='OK') {
				alert("E' stata inviata una richiesta via email al tripper!");
			}else {
				alert("Errore nella procedura, email non inviata");
			}
		});
	}
}