// JavaScript Document
//modifié le 02/10/2004
//ajout des fonctions qui gére le scroll dans la page d'accueil

pas = 0;//variable globale pour le scrollcalque pas initialisé à zero


//fonction qui permet de définir le style de calque suivant navigateur
function styleCalque(idCalque)
{
  if (document.all) calqueStyle = document.all[idCalque].style;
  if (document.layers) calqueStyle = document.layers[idCalque];
  if (document.getElementById) calqueStyle = document.getElementById(idCalque).style;
  return calqueStyle;
}
//ensemble des fcts qui permmettent l'animation du bandeau
function remplaceStr(chaine1,chaine2,chaine3)
{
  if ((chaine1 == "") || (chaine2 == "")) return false;
  valeur = chaine1.indexOf(chaine2);
  if (valeur == -1) return chaine1;
  strFinale = "";
  strTmp = chaine1;
  while (valeur != -1)
  {
    strFinale = strFinale.concat(strTmp.substring(0,valeur)).concat(chaine3);
    strTmp = strTmp.substr(valeur+chaine2.length);
    valeur = strTmp.indexOf(chaine2);
  }
  strFinale = strFinale.concat(strTmp);
  return strFinale;
}
function ecritCalque(idCalque,texte)
{
  if (document.all) document.all[idCalque].innerHTML = texte;
  if (document.layers) 
  {
    document.layers[idCalque].document.open();
    document.layers[idCalque].document.write(texte);
    document.layers[idCalque].document.close();
  }
  if (document.getElementById) 
  document.getElementById(idCalque).innerHTML = texte;
}
/*function styleCalque(idCalque)
{
  if (document.all) calqueStyle = document.all[idCalque].style;
  if (document.layers) calqueStyle = document.layers[idCalque];
  if (document.getElementById) calqueStyle = 
  document.getElementById(idCalque).style;
  return calqueStyle;
}*/
indScrollH = 0;
function scrollH(idCalque,taille,classe,messageScrollH)
{
  strTmp = "";
  while (strTmp.length < taille)
  {
    strTmp = strTmp + " ";
  }
  strFin = strTmp + messageScrollH;
  strAff = strFin.substr(indScrollH,taille);
  if (strAff.length < taille) strAff = strAff + 
  strTmp.substr(0,taille-strAff.length);
  strAff = remplaceStr(strAff," ","&nbsp;");
  strAff = "<SPAN CLASS='" + classe + "'>" + strAff + "</SPAN>";
  ecritCalque(idCalque,strAff);
  if (indScrollH < strFin.length-1) indScrollH++;
  else indScrollH = 0;
  setTimeout("scrollH('"+idCalque+"',"+taille+",'"+classe+"','"+messageScrollH+"')",130);
}

 /**********************************************************************************************
 creation de la fonction changeImage qui permet de changer la source d'une image
 entree : String nom de la balise image,String la nouvelle source
 ***********************************************************************************************/
 function changeImage(lenom,src)
 	{	
	
		document.images[lenom].src=src;
		
	}
/**************************************************************************************************
fonctions diaporama qui permettent de faire un diaporama de 2 ou plusieurs photos*
entree : String nom de la balise <img>, le tableau contenant les images du diaporama
**************************************************************************************************/
function diaporama1(nomImage,tabImage)
  {
  	
  	countDiap1++;
	tableImages1=tabImage;
	if(countDiap1==tableImages1.length) countDiap1=0;
	changeImage(nomImage,tableImages1[countDiap1].src);
	setTimeout("diaporama1('"+nomImage+"',tableImages1)",1000);
  }
 function diaporama2(nomImage,tabImage)
  {
  	
  	countDiap2++;
	tableImages2=tabImage;
	if(countDiap2==tableImages2.length) countDiap2=0;
	changeImage(nomImage,tableImages2[countDiap2].src);
	setTimeout("diaporama2('"+nomImage+"',tableImages2)",600);
  }
  function diaporama3(nomImage,tabImage)
  {
  	
  	countDiap3++;
	tableImages3=tabImage;
	if(countDiap3==tableImages3.length) countDiap3=0;
	changeImage(nomImage,tableImages3[countDiap3].src);
	setTimeout("diaporama3('"+nomImage+"',tableImages3)",800);
  }
  function diaporama(nomImage,tabImage)//pour un autre diaporama 
  {
  	//alert("hello");
  	countDiap++;
	//alert (countDiap);
	tableImages=tabImage;
	if(countDiap==tableImages.length) countDiap=0;
	changeImage(nomImage,tableImages[countDiap].src);
	setTimeout("diaporama('"+nomImage+"',tableImages)",2000);
  }
/*********************************************************************************************************************************
fonction pop_up pour ouverture d'une pop up avec le nom du fichier passé en paramétre
*********************************************************************************************************************************/
function pop_up(lefichier)
	{
		window.open("../scripts_php/plan.php?leNomPlan="+lefichier,"Plan_Maison","toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=yes,copyhistory=no,width=600,height=500,innerHeight=500,innerWidth=600,left=0,right=0");
	}
/******************************************************************************************************************
fonction lancer_fichier : fct utilisé pour selectionné l'URL correspondant au bouton sur lequel on clic
dans le template aff_titre_contenu.tpl
entree: le nom du fichier String
************************************************************************************************************/
function lancer_fichier(lefichier)
	{
		document.forms[0].action=lefichier;
	}
/**********************************************************************************
fonction qui permet de deplacer un calque d'un pas de x pixels sur l'axe des X 
et x pixels sur l'axe des Y .En entree ID du calque et le pas sur X et le pas sur Y
************************************************************************************/
function deplaceCalqueDe(idCalque,stepX,stepY)
{
  calqueStyle = styleCalque(idCalque);
  calqueStyle.left = parseInt(calqueStyle.left) + stepX;//parseInt transforme la chaine de caractere retournée par .left en integer
  calqueStyle.top = parseInt(calqueStyle.top) + stepY;
}
/***************************************************************************************************************************************
fonction qui permet le defilement d'un calque avec comme parametre en entree
l'id du calque, la valeur du sommet et du bas de la zone non cachée du calque
utilise la propriété clip d'un calque et le sens du défilement avec la variable
direction qui a 1 permet un défilement vers le haut et à -1 permet un défilement
vers le bas
*****************************************************************************************************/

function defileCalque(idCalque,clipTop,clipBottom,direction)
{ 
  
  
  pas = pas + (5*direction);
  
  deplaceCalqueDe(idCalque,0,(5*direction));//déplace le calque de 5 px vers le haut ou vers le bas suivant direction
   if (document.layers)
  {
    styleCalque(idCalque).clip.top = clipTop - pas;
    styleCalque(idCalque).clip.bottom = clipBottom - pas;
  }
  else styleCalque(idCalque).clip = "rect("+(clipTop-pas)+",auto,"+(clipBottom-pas)+",auto)";
  j=j+5;
  
  /*rendre la fct recursive en fct du nbre de caractéres*/
  setTimeout("defileCalque('"+idCalque+"',"+clipTop+","+clipBottom+","+direction+")",1500);//utilisation de la fct TimeOut qui permet de relancer defilcalqMot 
  
}

// begin absolutely positioned scrollable area object scripts 
/*
Extension developed by David G. Miles (www.z3roadster.net/dreamweaver)
Original Scrollable Area code developed by Thomas Brattli 
To add more shock to your site, visit www.DHTML Shock.com
*/

function verifyCompatibleBrowser(){ 
    this.ver=navigator.appVersion 
    this.dom=document.getElementById?1:0 
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
    this.ie4=(document.all && !this.dom)?1:0; 
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
 
    this.ns4=(document.layers && !this.dom)?1:0; 
    this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5) 
    return this 
} 
bw=new verifyCompatibleBrowser() 
 
 
var speed=50 
 
var loop, timer 
 
function ConstructObject(obj,nest){ 
    nest=(!nest) ? '':'document.'+nest+'.' 
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0; 
    this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0; 
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight 
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight 
    this.up=MoveAreaUp;this.down=MoveAreaDown; 
    this.MoveArea=MoveArea; this.x; this.y; 
    this.obj = obj + "Object" 
    eval(this.obj + "=this") 
    return this 
} 
function MoveArea(x,y){ 
    this.x=x;this.y=y 
    this.css.left=this.x 
    this.css.top=this.y 
} 
function MoveAreaDown(move){ 
	if(this.y>-this.scrollHeight+objContainer.clipHeight){ 
    this.MoveArea(0,this.y-move) 
    if(loop) setTimeout(this.obj+".down("+move+")",speed) 
	} 
} 
function MoveAreaUp(move){ 
	if(this.y<0){ 
    this.MoveArea(0,this.y-move) 
    if(loop) setTimeout(this.obj+".up("+move+")",speed) 
	} 
} 
 
function PerformScroll(speed){ 
	if(initialised){ 
		loop=true; 
		if(speed>0) objScroller.down(speed) 
		else objScroller.up(speed) 
	} 
} 
 
function CeaseScroll(){ 
    loop=false 
    if(timer) clearTimeout(timer) 
} 
var initialised; 
function InitialiseScrollableArea(){ 
    objContainer=new ConstructObject('divContainer') 
    objScroller=new ConstructObject('divContent','divContainer') 
    objScroller.MoveArea(0,0) 
    objContainer.css.visibility='visible' 
    initialised=true; 
} 
// end absolutely positioned scrollable area object scripts
/***********************************************************************************************
fen_unlien (le nom du lien) ; fct qui permet d'afficher la pop up pour la saisie des 
info pour modifier un lien sur la table concernée 
@param entree : le nom du lien

************************************************************************************************/
function fen_unlien(nomlien)
{
		nomlien=escape(nomlien); //permet de mettre au format ASCII les lettres accentuées
		//alert('../scripts_php/voir_unlien.php?nom_lien='+nomlien);
		window.open("../scripts_php/voir_unlien.php?nom_lien="+nomlien,"ModificationLien","toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,width=850,height=500,top=0,left=0")

}

