var tabcontentIDs=new Object();
var tabFicSWF=new Array();
var numOngletCourant=1;  // on mémorise l'onglet courant (utilisé par Comme Un Thermicien)

// afficher la DIV correspondant à l'onglet, cacher tous les autres
function expandcontent(linkobj){
 var ulid=linkobj.parentNode.parentNode.id; //id of UL element
 var ullist=document.getElementById(ulid).getElementsByTagName("li"); //get list of LIs corresponding to the tab contents
 for (var i=0; i<ullist.length; i++){
  ullist[i].className="";  //deselect all tabs
  if (typeof tabcontentIDs[ulid][i]!="undefined") //if tab content within this array index exists (exception: More tabs than there are tab contents)
    document.getElementById(tabcontentIDs[ulid][i]).style.display="none"; //hide all tab contents
 }
 // surligner le bouton de l'onglet cliqué
 linkobj.parentNode.className="selected"  ;

 // afficher la div correspondant à l'onglet cliqué
 var nomTab=linkobj.getAttribute("rel"); 
 var idTabDiv=document.getElementById(nomTab);
 idTabDiv.style.display="block";
 // mémoriser le n° de l'onglet courant (utilisé par Comme Un Thermicien)
 if (mat = nomTab.match(/([0-9])+$/)) {
   numOngletCourant=mat[1];
 }
 // et redimensionner si nécessaire la hauteur de la <div> contenante
 if (idTabDiv.offsetHeight > 400) {
  idTabDiv.parentNode.style.height = idTabDiv.offsetHeight + 'px';
 }
};

// afficher la DIV correspondant à l'onglet, cacher tous les autres
// cas du SWF : on charge en dynamique le code HTML au 1er clic de l'onglet 3D
// pour ne pas télécharger d'un coup tous les SWF lors de l'affichage des plans de maison
function expandcontent2(linkobj){
  // récupérer le n° d'indice du résultat à partir de l'id
  var strpos= ('maintab').length;
  var indice=linkobj.parentNode.parentNode.id;
  indice=indice.substr(strpos);
  // Si pas de 3D, le 3eme onglet n'est pas vide et c'est celui qui contient le plan => ne rien faire
  if (document.getElementById(linkobj.getAttribute("rel")).innerHTML.length == 0) {
    document.getElementById(linkobj.getAttribute("rel")).innerHTML = codehtml3D(tabFicSWF[indice]);
  }
  // afficher la DIV correspondant à l'onglet, cacher tous les autres
  expandcontent(linkobj);
};

function expandtab(tabcontentid, tabnumber){ //interface for selecting a tab (plus expand corresponding content)
 var thetab=document.getElementById(tabcontentid).getElementsByTagName("a")[tabnumber];
 if (thetab.getAttribute("rel"))
   expandcontent(thetab)
};

function savetabcontentids(ulid, relattribute){// save ids of tab content divs
 if (typeof tabcontentIDs[ulid]=="undefined") //if this array doesn't exist yet
   tabcontentIDs[ulid]=new Array();
 tabcontentIDs[ulid][tabcontentIDs[ulid].length]=relattribute;
};


function getullistlinkbyId(ulid, tabcontentid){ //returns a tab link based on the ID of the associated tab content
 var ullist=document.getElementById(ulid).getElementsByTagName("li");
 for (var i=0; i<ullist.length; i++){
  if (ullist[i].getElementsByTagName("a")[0].getAttribute("rel")==tabcontentid){
   return ullist[i].getElementsByTagName("a")[0];
   break;
  }
 }
};

// mémoriser la liste des fichiers SWF à afficher
function iswf(){
 for (var i=0; i<arguments.length; i++){ 
  tabFicSWF[i]=arguments[i];
 }
};

// initialiser les fonctions javascript associées à la gestion des onglets
// paramètres : liste des identifiants des <ul> associées aux groupes d'onglets
//--------------------------------------------------------------------------
function itab(){
 // pour toutes les <ul>
 for (var i=0; i<arguments.length; i++){ 
  var ulobj=document.getElementById(arguments[i]);
  // pour toutes les <li> de l'<ul> courante
  var ulist=ulobj.getElementsByTagName("li");
  for (var x=0; x<ulist.length; x++){
    // mémoriser l'id de la <div> d'onglet qui a été indiquée dans l'attribut "rel" de 
    // l'<a> située sous le <li>
    var ulistlink=ulist[x].getElementsByTagName("a")[0];
    if (ulistlink.getAttribute("rel")){
      savetabcontentids(arguments[i], ulistlink.getAttribute("rel"));
    
    // Si onglet "3D" (SWF) charger dynamiquement le code HTML pour ne pas précharger tous les SWF à l'appel de la page
    if (x==2) {
      ulistlink.onclick=function(){
       expandcontent2(this);
       return false;
      };
    }
    else {
      ulistlink.onclick=function(){
       expandcontent(this);
       return false;
      };
    }
    if (ulist[x].className=="selected") //if a tab is set to be selected by default
      expandcontent(ulistlink); //auto load currenly selected tab content
    }
  } //end loop through each LI element

 } //end loop through passed UL ids
};

function codehtml3D(ficSWF) {
  var debfl='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"\n' +
 'codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" ' +
 'width="550" height="400" align="middle"> \n' +
 '<param name=movie value="';
 var milfl='"> <param name=quality value=high> <param name=bgcolor value=#ffffff> <embed src="';
 var finfl='" quality="high" align="middle" width="550" height="400" type="application/x-shockwave-flash" />\n' +
 '</object>\n';

 return debfl + ficSWF +  milfl + ficSWF + finfl;

};


// <object width="550" height="400" 
// codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" 
// classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">
//     <param value="550" name="width">
//     <param value="400" name="height">
//     <param value="http://www.plans-maisons.com/achat-plan/PE1002.swf" name="src">
//     <embed width="550" height="400" src="http://www.plans-maisons.com/achat-plan/PE1002.swf" id="bv pour fonds blanc" type="application/x-shockwave-flash">
// </object>

