function add_etape()
{
document.getElementById('icon_arrivee').style.display = "none";
var current_etape = parseInt(document.getElementById('num_etape').value);
etape_new = current_etape+1;
document.getElementById('num_etape').value = etape_new;
var recept = document.getElementById('new_etape');

recept.innerHTML += '<tr id="n_etape'+etape_new+'">\n<td align="right" width="20%"><strong>Etape : </strong></td>\n<td align="left"><input id="etape'+ etape_new +'" name="etape'+ etape_new +'" type="text" class="input" size="50" value="" style="margin-left:10px;">&nbsp;<img src="img/supr.png" width="16" height="16" align="absmiddle" onClick="supr_etape('+etape_new+');" style="cursor:pointer;" title="Cliquez ici pour supprimer cette étape"></td>\n</tr>';

document.getElementById('tab_etape').style.display = "";
}

function supr_etape(id)
{
document.getElementById("etape"+id).value = '';
document.getElementById("n_etape"+id).style.display = 'none';
}

function setDirections(fromAddress, toAddress, locale)
{
if(fromAddress == "")
{
	alert("une adresse de départ doit être mentionnée");
}
else
{
var adr_etapes = "";
var nb_etape = document.getElementById('num_etape').value;
for (var i=1; i <= nb_etape; i++)
{
	var num_etape = "etape"+i;
	var nom_etape = document.getElementById(num_etape);
	if(nom_etape.value != "")
		adr_etapes += " to: " + nom_etape.value;
}

gdir.load("from: " + fromAddress + adr_etapes + " to: " + toAddress, { "locale": locale });
if(adr_etapes == "") document.getElementById('icon_arrivee').style.display = ""; else document.getElementById('icon_arrivee').style.display = "none";
document.getElementById("directions").style.display = "block";
document.getElementById("detail").style.display = "";
location.href="#carte";
map.clearOverlays(); // masque le marker
}
}

function handleErrors()
{
if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
  alert("Aucune location géographique correspondante n'a pu être trouvée pour l'une des adresses spécifiées.\nCe qui peut être du à une adresse récente, non mentionnée ou incorrecte.");
else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
  alert("La demande d'itinéraire n'a pu être calculée avec succès, aucune raison de l'échec n'est connu.");
//else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
  //alert("The HTTP q parameter was either missing or had no value. For geocoder requests, this means that an empty address was specified as input. For directions requests, this means that no query was specified in the input.\n Error code: " + gdir.getStatus().code);
else if (gdir.getStatus().code == G_GEO_BAD_KEY)
  alert("La clé (Key) n'est pas valide ou ne correspond pas au nom de domaine.");
else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
  alert("La demande d'itinéraire n'a pu être correctement parsé.");
else alert("Une erreur inconnue est survenue.");
}

function onGDirectionsLoad()
{
var reg=new RegExp("&nbsp;", "g");
kilometrage = gdir.getDistance().html;
document.getElementById("km").value = kilometrage.replace(reg,' ');
}