// Navigator : affiche la position de l'utilisateur sur le site

	var Arbre = new Array();    // Arbre represente l'arborescence du site
	
	Arbre[0] = new Array('Home','Annonces','Location');
	Arbre[1] = new Array('Home','Annonces','Colocation');
	Arbre[2] = new Array('Home','Annonces','Vente');
	Arbre[3] = new Array('Home','Annonces','Publier','publier-resultats');
	Arbre[4] = new Array('Home','Annonces','G&eacute;rer','gerer-resultats');
	
	Arbre[5] = new Array('Home','Pratique','Info-Immo','ToutSurLocation');
	Arbre[6] = new Array('Home','Pratique','Info-Immo','ToutSurLocationBail');
	Arbre[7] = new Array('Home','Pratique','Info-Immo','ToutSurLocationR&eacute;paration');
	Arbre[8] = new Array('Home','Pratique','Info-Immo','AideAuLogementALF');
	Arbre[9] = new Array('Home','Pratique','Info-Immo','AideAuLogementAPL');
	Arbre[10] = new Array('Home','Pratique','Info-Immo','EtudiantAide');
	Arbre[11] = new Array('Home','Pratique','Info-Immo','EtudiantLogement');
	Arbre[12] = new Array('Home','Pratique','Info-Immo','Prix');
	Arbre[13] = new Array('Home','Pratique','Actualit&eacute;s');
	Arbre[14] = new Array('Home','Pratique','M&eacute;t&eacute;o');
	Arbre[15] = new Array('Home','Pratique','Annuaire');
	
	Arbre[16] = new Array('Home','Paris','Sorties');
	Arbre[17] = new Array('Home','Paris','Plan');
	Arbre[18] = new Array('Home','Paris','Transports');
	
	Arbre[19] = new Array('Home','Divers','Liens');
	Arbre[20] = new Array('Home','Divers','Contact');
	Arbre[21] = new Array('Home','Divers','Publicit&eacute;');
	
	Arbre[22] = new Array('Home','Pratique','ProgTv');
	Arbre[23] = new Array('Home','Pratique','Z&eacute;taColoc','Inscription','Zc-I-R&eacute;sultats');
	Arbre[24] = new Array('Home','Pratique','Z&eacute;taColoc','Management','Zc-M-R&eacute;sultats');
	Arbre[25] = new Array('Home','Pratique','Z&eacute;taColoc','Liste des groupes','Descriptif du groupe','Zc-DG-R&eacute;sultats');
	Arbre[26] = new Array('Home','Pratique','Z&eacute;taColoc','Liste des groupes','Descriptif des membres du groupe','Zc-DM-R&eacute;sultats');
	Arbre[27] = new Array('Home','Pratique','Z&eacute;taColoc','Liste des groupes','Zc-LG-R&eacute;sultats');
	Arbre[28] = new Array('Home','Pratique','Z&eacute;taColoc','Liste des membres','Zc-LM-R&eacute;sultats');
	Arbre[29] = new Array('Home','Pratique','Z&eacute;taColoc','Cr&eacute;er un groupe','Zc-C-R&eacute;sultats');
	Arbre[30] = new Array('Home','Pratique','Z&eacute;taColoc','F.A.Q.');
	Arbre[31] = new Array('Home','Pratique','Services immobiliers');
	Arbre[32] = new Array('Home','Divers','Forum');
	Arbre[33] = new Array('Home','Divers','StatsPub');
	
	var UrlAssociee = new Array();	// Tableau associant pour chaque element de l'Arbre ci-dessus leur adresse url correspondante. L'element peut ou non avoir une url.
	UrlAssociee[0] = new Array('Home','main.html');
	UrlAssociee[1] = new Array('Annonces','');
	UrlAssociee[2] = new Array('Pratique','');
	UrlAssociee[3] = new Array('Paris','');
	UrlAssociee[4] = new Array('Divers','');

	UrlAssociee[5] = new Array('Location','locations.html');
	UrlAssociee[6] = new Array('Colocation','colocations.html');
	UrlAssociee[7] = new Array('Vente','ventes.html');
	UrlAssociee[8] = new Array('Publier','publier.html');
	UrlAssociee[9] = new Array('G&eacute;rer','gerer.html');
	
	UrlAssociee[10] = new Array('Info-Immo','infoimmo.html');
	UrlAssociee[11] = new Array('ToutSurLocation','info-immo/ToutSurLocation.html');
	UrlAssociee[12] = new Array('ToutSurLocationBail','info-immo/ToutSurLocationBail.html');
	UrlAssociee[13] = new Array('ToutSurLocationR&eacute;paration','info-immo/ToutSurLocationReparation.html');
	UrlAssociee[14] = new Array('AideAuLogementALF','info-immo/AideAuLogementALF.html');
	UrlAssociee[15] = new Array('AideAuLogementAPL','info-immo/AideAuLogementAPL.html');
	UrlAssociee[16] = new Array('EtudiantAide','info-immo/EtudiantAide.html');
	UrlAssociee[17] = new Array('EtudiantLogement','info-immo/EtudiantLogement.html');
	UrlAssociee[18] = new Array('Prix','info-immo/prix.html');
	
	UrlAssociee[19] = new Array('Actualit&eacute;s','actualites.html');
	UrlAssociee[20] = new Array('M&eacute;t&eacute;o','meteo.html');
	UrlAssociee[21] = new Array('Annuaire','annuaire.html');
  
	UrlAssociee[22] = new Array('Sorties','sorties.html');
	UrlAssociee[23] = new Array('Plan','plan.html');
	UrlAssociee[24] = new Array('Transports','transports.html');
	
	UrlAssociee[25] = new Array('Liens','liens.html');
	UrlAssociee[26] = new Array('Contact','contact.html');
	UrlAssociee[27] = new Array('Publicit&eacute;','publicite.html');
	
	UrlAssociee[28] = new Array('gerer-resultats','cgi-bin/gerer.cgi');
	UrlAssociee[29] = new Array('ProgTv','progtv.html');
	UrlAssociee[30] = new Array('Z&eacute;taColoc','zetacoloc.html');
	UrlAssociee[31] = new Array('Inscription','zetacoloc/inscription.html');
	UrlAssociee[32] = new Array('Zc-I-R&eacute;sultats','cgi-bin/zc_inscription.cgi');
	UrlAssociee[33] = new Array('Management','cgi-bin/zc_management.cgi');
	UrlAssociee[34] = new Array('Zc-M-R&eacute;sultats','cgi-bin/zc_management.cgi');
	UrlAssociee[35] = new Array('Liste des groupes','cgi-bin/zc1.cgi');
	UrlAssociee[36] = new Array('Liste des membres','cgi-bin/zc2.cgi');
	UrlAssociee[37] = new Array('Descriptif du groupe','cgi-bin/zc3.cgi');
	UrlAssociee[38] = new Array('Descriptif des membres du groupe','cgi-bin/zc4.cgi');
	UrlAssociee[39] = new Array('Cr&eacute;er un groupe','zetacoloc/creerungroupe.html');
	UrlAssociee[40] = new Array('F.A.Q.','zetacoloc/faq.html');
	UrlAssociee[41] = new Array('Zc-C-R&eacute;sultats','cgi-bin/zc_creergroupe.cgi');
	UrlAssociee[42] = new Array('Zc-LG-R&eacute;sultats','cgi-bin/zc1.cgi');
	UrlAssociee[43] = new Array('Zc-LM-R&eacute;sultats','cgi-bin/zc2.cgi');
	UrlAssociee[44] = new Array('Zc-DG-R&eacute;sultats','cgi-bin/zc3.cgi');
	UrlAssociee[45] = new Array('Zc-DM-R&eacute;sultats','cgi-bin/zc4.cgi');
	UrlAssociee[46] = new Array('Services immobiliers','servicesimmo.html');
	UrlAssociee[47] = new Array('publier-resultats','cgi-bin/locations.cgi');
	UrlAssociee[48] = new Array('Forum','cgi-bin/forum.cgi');

function Navigator(p_sElement,iFav) {				// iFav = 0 pour ne pas afficher Ajouter aux favoris. Sinon affichage.
	// Maintenant le plus interessant :
	// Navigator() recoit un element en parametre. Il s'agit alors d'afficher a l'ecran tous les elements peres de cet element avec leur adresse Url RELATIVE associée (et non absolue !!)
	// Ex : reception de Location en parametre : resultat -> envoi du code html : <A href="main.html">Home</A> > Annonces > Location
	// Ex : reception de Prix en parametre : 		 resultat -> envoi du code html : <A href="../main.html">Home</A> > Pratique > <A href="../infoimmo.html">Info-Immo</A> > Prix
	// PS : l'element est unique et il ne tient pas compte de la casse
  
  // 1) verification que l'element (le parametre) existe dans l'arbre
  var iDimArbre = Arbre.length;
  var iDimUrlAssociee = UrlAssociee.length;
  var iDimSousArbre = 0;
  var i=0, j=0;
	var sNavigator = "";
	var sElement = p_sElement.toLowerCase();
  var bContinue = false;
  var iPosElement_i = 0;
  var iPosElement_j = 0;
  var sUrlAssociee = "";
  var sUrlFinale = "";
  var sElementFinal = "";
  
  for (i=0;i<iDimArbre;i++) {
  	iDimSousArbre = Arbre[i].length;
  	for (j=0;j<iDimSousArbre;j++) {
  		if (Arbre[i][j].toLowerCase() == sElement) {
  			bContinue = true;
  			iPosElement_i = i;
  			iPosElement_j = j;
  			j=iDimSousArbre;
  			i=iDimArbre;
  		}
  	}
  }
  
  if (bContinue) {	 //	l'element existe dans l'arbre
// 2) on recupere chaque element pere du sous arbre iPosElement_i a partir de la position iPosElement_j:
		sElementFinal = Arbre[iPosElement_i][iPosElement_j];
		sUrlFinale = getUrlAssociee(sElementFinal);
		
		for (j=0;j<iPosElement_j;j++) {
			sElement = Arbre[iPosElement_i][j];
			sUrlAssociee = getUrlAssociee(sElement);
			
			if (sUrlAssociee != "") {
				sNavigator += "<A href=\"" + DNS(sUrlFinale,sUrlAssociee) + "\" target=_parent>" + sElement + "</A>" + " > ";
			} else {        // pas de lien
				sNavigator += sElement + " > ";
			}
		}

		sNavigator += sElementFinal;
  
		document.write("<TABLE width=\"600\" border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\">");
		document.write("<TR><TD>");
		document.write("<FONT face=\"verdana\" size=\"2\">" + sNavigator + "</FONT>");
		if (iFav == 0) {			// ne pas afficher "ajouter aux fav"
			document.write("</TD><TD align=\"right\">&nbsp;");
		} else {							// afficher "ajouter aux fav"
			document.write("</TD><TD align=\"right\"><FONT face=\"verdana\" size=\"2\"><A href=\"javascript:fav()\">Ajouter cette page &agrave; vos favoris !</U></FONT>");
		}
		document.write("</TD></TR>");
		document.write("</TABLE>");
	}
}

function getUrlAssociee(sElement) {
	var iDimUrlAssociee = UrlAssociee.length;

  for (var i=0;i<iDimUrlAssociee;i++) {
 		if (UrlAssociee[i][0] == sElement) {
  		return UrlAssociee[i][1];
  	}
  }
  
  return "";
}


function DNS(sUrl_Depart,sUrl_Arrivee) {
	var iNbRepDepart = CompteLeNombreDeRepertoires(sUrl_Depart);
	var iNbRepArrivee = CompteLeNombreDeRepertoires(sUrl_Arrivee);
	var i=0;
	var j=0;
	var jMax=0;
	var sAdresse = "";
	var iPos=0;
	
	for (i=1;i<iNbRepDepart+1;i++) {
		if (ExtraireLeRepertoire(sUrl_Depart,i) == ExtraireLeRepertoire(sUrl_Arrivee,i)) {
			iPos = i;
  	} else {
  		i = iNbRepDepart+1;
  	}
  }
  
 	// depart vers le repertoire
	jMax = iNbRepDepart - iPos + 1;
	for (j=1;j<jMax;j++) {
		sAdresse += "../";
	}

	// repertoire vers arrivee
	jMax = iNbRepArrivee - iPos + 1;
	for (j=1;j<jMax;j++) {
		sAdresse += ExtraireLeRepertoire(sUrl_Arrivee,iPos+j) + "/";
	}
	  	
	// Ajouter le nom :
	iPos=0;
	for (i=1;i<iNbRepArrivee;i++) {
		iPos = sUrl_Arrivee.indexOf('/',iPos);
		iPos++;
	}
	
	sAdresse += sUrl_Arrivee.substring(iPos,sUrl_Arrivee.length);
	
	return sAdresse;
}

function CompteLeNombreDeRepertoires(sUrl) {
	var iPos = -1;
	var iNbRepertoires = 1; // par defaut 1 repertoire existe
	
	while ((iPos = sUrl.indexOf('/',iPos+1)) != -1) {
		iNbRepertoires++;
	}
	
	return iNbRepertoires;
}

function ExtraireLeRepertoire(sUrl,iNumero) {
	// de gauche a droite, retourne le repertoire iNumero de sUrl
	// "" indique que le repertoire iNumero n'existe pas
	// "appart" indique le nom du premier repertoire (nom par defaut)
	// PS : si sUrl == info-immo/prix.html, info-immo represente le repertoire 2
	// "appart" est donc le repertoire 1
	
	var iPos1 = 0;
	var iPos2 = 0;
	
	for (var i=1;i<iNumero;i++) {
		iPos1 = iPos2+1;
		iPos2 = sUrl.indexOf('/',iPos1);

		if (iPos2 == -1) { // iNumero n'existe pas
			i=iNumero;
		}
	}
	
	if (iPos2 != -1 && iNumero>0) {	// iNumero existe
		if (iPos2 == 0) {
			return "appart";
		} else {
			return sUrl.substring(iPos1-1,iPos2);
		}
	} else {
		return "";
	}
}
		
function fav()
{
	if ((navigator.appVersion.indexOf("MSIE") > 0) && (parseInt(navigator.appVersion) >= 4))
	{
		window.external.AddFavorite(document.location.href, document.title);
	} else  {
		alert('Cliquez sur Ok puis appuyez sur CTRL+D\n(la touche "Ctrl" et la touche "D" en même temps)\n\nLe site sera rajouté automatiquement à vos favoris.');
	}
}		

function AjouterFav(sFavori,font)
{
	if (font==1) {
		document.write("<A href=\"javascript:fav('" + sFavori + "')\">Ajouter cette page &agrave; vos favoris.</U></a>");
	}
	else {
		document.write("<FONT face=\"verdana\" size=\"2\"><A href=\"javascript:fav('" + sFavori + "')\">Ajouter cette page &agrave; vos favoris !</U></a></FONT>");
	}
}