/*#################################################
# Projet			: AGENCE SAINT-HUBERT								#
# Date Début	: 09/11/2007												#
# Last Modif	:																		#
# Auteur			: Emmanuel CEGO											#
# Description	: JS servant aux fonctions communes	#
###################################################*/

function tri(tri)
{
	document.form_nav.tri.value = tri;
	document.form_nav.is_first_time.value=0;
	document.form_nav.page.value=0;
	document.form_nav.sens.value=1;
	document.form_nav.submit();
}
//********************************************************************//
// FONCTION PERMETTANT D'ACTIVER OU DE DÉSACTIVER L'ATTRIBUT DISABLED	//
//********************************************************************//
function setDisabled(id, state){	
	var divObj = null;
	divObj = $(id); 	 	 		
 	divObj.disabled = state; 	
} 


//********************************************************************//
// FONCTION PERMETTANT D'ACTIVER OU DE DÉSACTIVER L'ATTRIBUT READONLY	//
//********************************************************************//
function setReadonly(id, state){	
	var divObj = null;
	divObj = $(id); 	 	 		
	divObj.readOnly = state;
} 


//*********************************************************************//
// FONCTION PERMETTANT DE NAVIGUER SUR LES PAGES DU LISTING D'ANNONCES //
//*********************************************************************//
function LinkPages(page){
	document.form_nav.page.value = page;
	document.form_nav.sens.value = "stand";
	document.form_nav.submit();
}


//****************************************************************************************//
// FONCTION PERMETTANT D'ALLER SUR PAGE PRÉCÉDANTE OU SUIVANTE DANS LE LISTING D'ANNONCES //
//****************************************************************************************//
function Go(sens){
	document.form_nav.sens.value = sens;
	document.form_nav.submit();
}
	

//*********************************************************************************************//
// FONCTION PERMETTANT D'ALLER SUR PAGE PRÉCÉDANTE OU SUIVANTE DANS LE LISTING DE LA SÉLECTION //
//*********************************************************************************************//
function GoCaddie(sens){
	document.form_nav.sens.value = sens;
	document.form_nav.liste_annonces.value = GetListeCookie();
	document.form_nav.submit();
}


//******************************************************************//
// FONCTION PERMETTANT DE RACCOURCIR ET AMÉLIORER LE GETELEMENTBYID //
//******************************************************************//
/* 
La dernière innovation en la matière est la fonction baptisée $(), issue du projet Prototype
et qui sert de remplacement efficace à getElementById(). En effet, grâce à elle, un développeur
peut remplacer ces appels de la forme var el = document.getElementById('id'); en var el = $('id').
C'est bien sûr plus court, mais $() va plus loin, en donnant la possibilité d'appeller plusieurs id
différents pour obtenir un tableau d'éléments à parcourir ensuite : var el = $('id1', 'id2', 'id3');.
La version que nous présentons ici est celle de Matthew Pennell.

L'idée de cette version est d'offrir un raccourci non seulement pour getElementById(),
mais également getElementsByTagName() et getElementsByClass(), le tout en une seule fonction.
En somme, une boîte à outils entière en une seule fonction simple d'usage : l'auteur la surnomme
d'ailleurs getElementsByAnything().
*/
	 
function $(){ 
	var elements = new Array(); 
  for (var i=0,len=arguments.length;i<len;i++){ 
  	var element = arguments[i]; 
    if (typeof element == 'string'){ 
    	var matched = document.getElementById(element); 
      if (matched){ 
      	elements.push(matched); 
      }
      else{ 
      	var allels = (document.all) ? document.all : document.getElementsByTagName('*'); 
        var regexp = new RegExp('(^| )'+element+'( |$)'); 
        for (var i=0,len=allels.length;i<len;i++) if (regexp.test(allels[i].className)) elements.push(allels[i]); 
      } 
      if (!elements.length) elements = document.getElementsByTagName(element); 
      if (!elements.length){ 
      	elements = new Array(); 
        var allels = (document.all) ? document.all : document.getElementsByTagName('*'); 
        for (var i=0,len=allels.length;i<len;i++) if (allels[i].getAttribute(element)) elements.push(allels[i]); 
      } 
      if (!elements.length){ 
      	var allels = (document.all) ? document.all : document.getElementsByTagName('*'); 
        for (var i=0,len=allels.length;i<len;i++) if (allels[i].attributes) for (var j=0,lenn=allels[i].attributes.length;j<lenn;j++) if (allels[i].attributes[j].specified) if (allels[i].attributes[j].nodeValue == element) elements.push(allels[i]); 
      } 
    }
    else{ 
    	elements.push(element); 
    } 
  } 
  if (elements.length == 1){ 
  	return elements[0]; 
  }
  else{ 
  	return elements; 
  } 
}


//****************************************************************//
// FONCTION PERMETTANT D'AUTORISER QUE LES CHIFFRES DANS UN CHAMP //
//****************************************************************//
function NumMask(e){	
	var IE5 = false;

	if (!e) var e = window.event;
	if (e.keyCode){
		IE5= true; code = e.keyCode;}
	else if (e.which) code = e.which ;

	//test du code
	if (code < 48 || code > 57) {
		if(IE5){
			e.returnValue = false;
		}
		else
			e.preventDefault();
	} 
}


//*******************************************************************************************//
// FONCTION PERMETTANT D'AUTORISER QUE LES CHIFFRES OU UNE DÉCIMALE (UN POINT) DANS UN CHAMP //
//*******************************************************************************************//
function NumMaskDecimal(e){	
	var IE5 = false;

	if (!e) var e = window.event;
	if (e.keyCode){
		IE5= true; code = e.keyCode;}
	else if (e.which) code = e.which ;

	//test du code
	if ((code < 48 && code != 46) || (code > 57)) {
		if(IE5){
			e.returnValue = false;
		}
		else
			e.preventDefault();
	} 
}


//***************************************************************//
// FONCTION PERMETTANT DE VÉRIFIER LE FORMAT D'UNE ADRESSE EMAIL //
//***************************************************************//
function checkEmail(email){	
	var i;
	
	// Recherche de @
	i = email.indexOf("@");
	if (i == -1) return false;	
	
	// Séparation du nom de l'utilisateur et du nom de domaine.
	var username = email.substring(0, i);
	var domain = email.substring(i + 1, email.length)

	// Recherche des espaces au début du nom de l'utilisateur.
	i = 0;
	while ((username.substring(i, i + 1) == " ") && (i < username.length)){
		i++;
	}
	
	// Les enlève s'il en trouve.
	if (i > 0) username = username.substring(i, username.length);
	
	// Recherche d'espaces à la fin du nom de domaine.
	i = domain.length - 1;
	while ((domain.substring(i, i + 1) == " ") && (i >= 0)) {
		i--;
	}
	
	// Les enlève s'il en trouve.
	if (i < (domain.length - 1)) domain = domain.substring(0, i + 1);
	
	// Vérifie que le nom de l'utilisateur et du domaine ne soit pas vide.
	if ((username == "") || (domain == ""))	return false;
	
	// Vérifie s'il n'y a pas de caractères interdits dans le nom de l'utilisateur.
	var ch;
	for (i = 0; i < username.length; i++){
		ch = (username.substring(i, i + 1)).toLowerCase();
		if (!(((ch >= "a") && (ch <= "z")) || ((ch >= "0") && (ch <= "9")) ||	(ch == "_") || (ch == "-") || (ch == "."))) return false;		
	}
	
	// Vérifie s'il n'y a pas de caractères interdits dans le nom de domaine
	for (i = 0; i < domain.length; i++){
		ch = (domain.substring(i, i + 1)).toLowerCase();
		if (!(((ch >= "a") && (ch <= "z")) || ((ch >= "0") && (ch <= "9")) ||	(ch == "_") || (ch == "-") || (ch == "."))){
			return false;
		}
	}

	// Ajouter ci-dessous de nouveaux noms de domaine (une liste sur http://www.toulouse-renaissance.net/c_outils/c-nom-domaine.htm)
	var aSuffix = new Array("com","net","int","aero","biz","museum","name","info","coop","pro","eu","edu","org","gov","gouv","mil","bj","dz","de","ad","be","ca","bf","bi","cm","cf","cg","cd","ci","cn","dj","fr","ga","gp","gf","jp","lu","mg","ml","ma","mq","mr","mc","nc","pf","re","pm","sn","ch","td","tf","tn");
	var bFoundSuffix = false;
	i = 0;
	while (i < aSuffix.length){
		if (("." + aSuffix[i]) == domain.substring(domain.length - aSuffix[i].length - 1, domain.length))	return true;		
		i++;
	}
	
	// Si le nom de domaine est inconnu  : return false
	return false;	
}


//********************************************************************//
// FONCTION PERMETTANT LE SWAPPING DES IMAGES DANS LA FICHE DÉTAILLÉE //
//********************************************************************//
// function slide(img_big, img){
// 	document.images[img_big].src = img;
// }

function slide(img_big,img,mandat){
	var reg=new RegExp('object id','g');
	var result_reg = document.getElementById("IMG_RESULT").innerHTML;
	var reg_mandat = new RegExp("http","gi");
	var test_reg_mandat = reg_mandat.test(mandat);
	if(img == 'visite_virtuelle'){
		if(test_reg_mandat == true){
			document.getElementById("IMG_RESULT").innerHTML = "<iframe id=\"img_big\" name=\"img_big\" style=\"width:450px;height:320px\" src=\""+mandat+"\" frameborder=\"0\" allowfullscreen></iframe>";
		}else{
			document.getElementById("IMG_RESULT").innerHTML = "<object id=\"img_big\" name=\"img_big\" style=\"width:450px;height:320px\"><param name=\"movie\" value=\"/_img/video/player.swf?autostart=true&file=video_"+mandat+".flv\" /><param name=\"loop\" value=\"true\" /><param name=\"wmode\" value=\"transparent\" /><param name=\"quality\" value=\"high\" /><param name=\"loop\" value=\"true\" /><param name=\"controller\" value=\"false\" /><embed controller=\"false\" width=\"450\" height=\"320\"  wmode=\"transparent\" src=\"/_img/video/player.swf?autostart=true&file=video_"+mandat+".flv\" quality=\"high\" type=\"application/x-shockwave-flash\" /></object>";
		}
/*		document.getElementById("IMG_RESULT").innerHTML = "<object id=\"img_big\" name=\"img_big\" style=\"width:450px;height:320px\"><param name=\"movie\" value=\"/_img/video/player.swf?file=video_"+mandat+".flv\" /><param name=\"loop\" value=\"true\" /><param name=\"wmode\" value=\"transparent\" /><param name=\"flashvars\" VALUE=\"autostart=true\" /><param name=\"autostart\" VALUE=\"true\" /><param name=\"quality\" value=\"high\" /><param name=\"autoplay\" value=\"true\" /><param name=\"loop\" value=\"true\" /><param name=\"controller\" value=\"false\" /><embed  autoplay=\"true\" autostart=\"true\" controller=\"false\" width=\"450\" height=\"320\"  wmode=\"transparent\" src=\"/_img/video/player.swf?file=video_"+mandat+".flv\" quality=\"high\" type=\"application/x-shockwave-flash\" /></object>";*/
	}else{
		document.getElementById("IMG_RESULT").innerHTML = "<img id=\"img_big\" name=\"img_big\" src=\""+img+"\" alt=\"Coup de coeur\" width=\"450\" height=\"320\" />";
		document.images[img_big].src = img;
	}
}
//******************************************//
// FONCTION PERMETTANT LE CENTRAGE VERTICAL //
//******************************************//
function top_centre(hauteur){	 
	var top=(screen.height-hauteur)/2;	 
	return top;
}
	

//********************************************//
// FONCTION PERMETTANT LE CENTRAGE HORIZONTAL //
//********************************************//
function left_centre(largeur){	 
	var left=(screen.width-largeur)/2;	 
	return left;
}


//*************************************************************************//
// FONCTION PERMETTANT DE LANCER LA POPUP POUR LA VIDÉO FLASH DE L'ANNONCE //
//*************************************************************************//
function PopMyVideo(id_video){
	var page = "http://www.visiteonline.fr/video-immobiliere.aspx?c=" + id_video + "&r=li";	
	var popup_video = window.open(page,"popup_video","menubar=no, status=no, scrollbars=no, menubar=no, resizable=no, width=540, height=360, left = " + left_centre(540) + ", top = " + top_centre(330));	
	popup_video.window.focus();
}


//************************************************************************//
// FONCTION PERMETTANT D'ENVOYER LA DEMANDE D'INFORMATION DE L'INTERNAUTE //
//************************************************************************//
function DemandeInfos(){
	var page = "";
	var popup_video = window.open(page,"popup_demande_infos","menubar=no, status=no, scrollbars=no, menubar=no, resizable=no, width=345, height=185, left = " + left_centre(345) + ", top = " + top_centre(185));	
	document.demande_infos.submit();
	popup_video.window.focus();
}


//***********************************************************************//
// FONCTION PERMETTANT D'ENVOYER LA DEMANDE D'ESTIMATION DE L'INTERNAUTE //
//***********************************************************************//
function DemandeEstimation(){
	var page = "";
	var popup_video = window.open(page,"popup_demande_estimation","menubar=no, status=no, scrollbars=no, menubar=no, resizable=no, width=345, height=185, left = " + left_centre(345) + ", top = " + top_centre(185));	
	document.demande_estimation.submit();
	popup_video.window.focus();
}


//***************************************************************//
// FONCTION PERMETTANT DE METTRE EN FAVORI LE SITE WEB (IE + FF) //
//***************************************************************//
function AddBookmark() { 
	if (navigator.appName != 'Microsoft Internet Explorer') window.sidebar.addPanel("Agence Saint-Hubert","http://www.agencesainthubert.fr",""); 
	else window.external.AddFavorite("http://www.agencesainthubert.fr","Agence Saint-Hubert");
} 


//********************************************************************************//
// FONCTION PERMETTANT DE DÉSACTIVER LA TOUCHE ENTRÉE DANS UN CHAMP DE FORMULAIRE //
//********************************************************************************//
function EnterBanned(event){
	// Compatibilité IE / Firefox
  if(!event && window.event){
  	event = window.event;
  }
  // IE
  if(event.keyCode == 13){
  	event.returnValue = false;
    event.cancelBubble = true;
  }
  // DOM
  if(event.which == 13){
  	event.preventDefault();
    event.stopPropagation();
  }
}
