/* Javascript - Bouygues Immo */

/***** Sommaire *****/
// 00 - Variables
// 05 - Gestion des layer de navigation haute
// 10 - D&eacute;blocage liste secondaire
// 20 - Liens javacsript
// 88 - Controle d'elements s'excluant dans une select-multiple
// 99 - onLoad
/*******************/

/***** 00 - Variales *****/
var actURL = document.location.href;
var isOpera = (navigator.userAgent.indexOf('Opera') == 55 || navigator.userAgent.indexOf('Opera') == 36 || navigator.userAgent.indexOf('Opera') == 0)? true : false ;
var isIE = (document.all && !isOpera)? true : false ;
var isNetscape = (navigator.userAgent.indexOf('Netscape') == -1)? false : true ;
var isIEMac = (navigator.userAgent.indexOf('MSIE') != -1 && navigator.userAgent.indexOf('Mac') != -1)? true : false ;

// Timers
var timeSNav;

/***** 05 - Gestion des layer de navigation haute *****/
var lastSNav = '';
function showSNav(id){
	if(lastSNav != ''){
		hideSNav(lastSNav);
	}
	if(isIEMac){
		document.getElementById(id+'cont').style.visibility = 'visible';
		document.getElementById(id+'cont').style.display = 'block';
		document.getElementById(id).style.backgroundImage = 'url(Includes/Images/nav/navTopLayer-fd.gif)';
	} else {
		document.getElementById(id).className += ' activ';
	}
	lastSNav = id;
}
function hideSNav(id){
	if(isIEMac){
		document.getElementById(id+'cont').style.visibility = 'hidden';
		document.getElementById(id+'cont').style.display = 'none';
		document.getElementById(id).style.backgroundImage = 'none';
	} else {
		var sNav = document.getElementById(id).className;
		document.getElementById(id).className = sNav.substr(0,sNav.length-6);
	}
	lastSNav = '';
}

/***** 10 - D&eacute;blocage liste secondaire *****/
function unLockList(parent,id){
	if(parent == '' || parent == '00'){
		document.getElementById(id).disabled = 'disabled';
	} else {
		document.getElementById(id).disabled = '';
	}
}

/***** 20 - Lien BI *****/
function lienBi(pLien)
{
    window.location=decode(pLien);
}

function lienBiBlank(pLien)
{
     window.open(decode(pLien));
}

function decode(pLien)
{
    return pLien.substr(1).replace(/^:/,'http:||').replace(/\|/g,'/');
}

/***** 88 - Controle d'elements s'excluant dans une select-multiple *****/
function unselectExcluding(selectItem, optionItem, excludeItem) {
	if (selectItem.type=="select-multiple") {
		if (optionItem==excludeItem && optionItem.selected) {
			/* excludeItem selected, will unselect all others */
			for(i=0;i<selectItem.options.length;i++)
				if (selectItem.options[i]!=excludeItem) selectItem.options[i].selected=false;
		} else if (optionItem.selected) {
			/* lambda item selected, will unselect exludeItem */
			excludeItem.selected=false;
		}
		/* No selected item, will selected excludeItem  */
		var anySelected = false;
		for(i=0;i<selectItem.options.length;i++)
			if (selectItem.options[i].selected) anySelected=true;
		if (anySelected==false) excludeItem.selected=true;
	}
}

/***** 89 - Controle d'elements s'excluant dans une select-multiple *****/
function unselectExcluding2(selectItem) {

	/* recuperation des valeurs maintenant selectionnees */
	var newSelection = new Array();
	for (i=0; i<selectItem.options.length; i++) {
		if (selectItem.options[i].selected) {
			newSelection[newSelection.length] = selectItem.options[i];
		}
	}

	if (navigator.userAgent.indexOf("MSIE")!=-1 && selectItem.type=="select-multiple") {
	/* fonction speciale simplifiee pour le neuneu IE */
	
		/* excludeItem selected, will unselect all others */
		if (newSelection[0] == selectItem.options[0]) {
			for(i=1;i<selectItem.options.length;i++) selectItem.options[i].selected=false;
		}
		/* No selected item, will selected excludeItem */
		var anySelected = false;
		for(i=0;i<selectItem.options.length;i++)
			if (selectItem.options[i].selected) anySelected=true;
		if (anySelected==false) selectItem.options[0].selected=true;
	} else {
	/* Cas particulier pour les autres */
	
		/* excludeItem and other selected, will unselect excludeItem */
		if (newSelection.length>1) {
			selectItem.options[0].selected=false;
		}
	}
}

/***** 99 - onLoad *****/
function loadScript(){
	// Tri des block
	var divTab = document.getElementsByTagName('div');
	var isNavTop = false;
	
	for(i=0; i<divTab.length; i++){
		if(divTab[i].className == 'navTop'){
			isNavTop = i;
		}
	}
	
	// 05 - Gestion des layer de navigation haute
	if(isNavTop != false){
		var navTop = divTab[isNavTop];
		var tempTab = navTop.getElementsByTagName('li');
		var tempCount = 0;
		for(i=0; i<tempTab.length; i++){
			if(tempTab[i].getElementsByTagName('li').length > 0){
				if(isIEMac){
					tempTab[i].getElementsByTagName('ul')[0].id = 'navLayer'+tempCount+'cont';
					tempTab[i].getElementsByTagName('ul')[0].style.visibility = 'hidden';
					tempTab[i].getElementsByTagName('ul')[0].style.display = 'none';
					tempTab[i].getElementsByTagName('ul')[0].style.backgroundImage = 'none';
				}
				tempTab[i].id = 'navLayer'+tempCount;
				tempCount ++;
				tempTab[i].onmouseover = function(){ showSNav(this.id); };
				tempTab[i].onmouseout = function(){ clearTimeout(timeSNav); timeSNav = setTimeout('hideSNav(\''+this.id+'\');',300); };
				tempTab[i].onmousemove = function(){ clearTimeout(timeSNav); };
			}
		}
	}
	
	// 10 - D&eacute;blocage liste secodnaire (Home - Ville) IDS : dptChoice - cityChoice
	if(document.getElementById('dptChoice')){
		document.getElementById('dptChoice').onchange = function(){ unLockList(this.value,'cityChoice'); }
	}
}

    function toggleDiv(id,displayit) {
		
       if (displayit=='1'){
           if (document.getElementById) document.getElementById(''+id+'').style.display = "block"
       }
       else
	   {		   
           if (document.getElementById(''+id+'').style.display != "block") 
		   {			   
			   document.getElementById(''+id+'').style.display = "block"
		   }
               
           else
               document.getElementById(''+id+'').style.display = "none"
	   }	   
    }