var isMSIE = navigator.userAgent.indexOf("MSIE")!=-1;

var vitesseTransitionOpacityIncrements = new Array(360, 40, 20, 13, 7, 3);  //incréments de t en fonction de la vitesse
var vitesseTransitionOpacityIntervals  = new Array(50, 50, 50, 50, 50, 50); //intervalles en fonction de la vitesse

var vitesseTransitionLeftIncrements = new Array(100, 33, 20, 10, 6, 2);  //incréments de t en fonction de la vitesse
var vitesseTransitionLeftIntervals  = new Array(50, 50, 50, 50, 50, 50); //intervalles en fonction de la vitesse

SLIDE_TAB_NONE  = 0; 
SLIDE_TAB_PUCES1 = 10;
SLIDE_TAB_NUMBERS1 = 20;
SLIDE_TAB_NUMBERS2 = 21;
SLIDE_TAB_NUMBERS3 = 22;
SLIDE_TAB_NUMBERS4 = 23;
SLIDE_TAB_LABELS1 = 30;
SLIDE_TAB_LABELS2 = 31;
SLIDE_TAB_LABELS3 = 32;
SLIDE_TAB_LABELS4 = 33;

SLIDE_TRANSITION_NONE = 0;

SLIDE_TRANSITION_OPACITY1 = 10;

SLIDE_TRANSITION_LEFT1 = 20;
SLIDE_TRANSITION_LEFT2 = 21;
SLIDE_TRANSITION_LEFT3 = 22;

SLIDE_TRANSITION_RIGHT1 = 30;
SLIDE_TRANSITION_RIGHT2 = 31;
SLIDE_TRANSITION_RIGHT3 = 32;

function Slide(id, slidesNumber, vitesseTransition, pause, auto, transition, tab, tabOutside, imgDir)
   {   
   this.id = id;
   this.slidesNumber = slidesNumber;

   if (vitesseTransition<0) vitesseTransition=0; else if (vitesseTransition>5) vitesseTransition=5;
   this.vitesseTransition = vitesseTransition;             

   this.pause = pause;                            //temps de pause (en secondes) si auto est à 1 (dans xml:attribut pause)
   this.auto = auto;                              //0 ou 1 (attribut automatique)
   this.transition = transition;                  //type de transition
   this.imgDir = imgDir;
   this.tab = tab;
   this.tabOutside = tabOutside;

   //
   //Methods
   //
   this.tover = tover;                            //onmouseover et onmouseout, si auto est à 1
   this.getSlideElements = getSlideElements;      //création de la collection elArray (lancée dans onload, mais aurait pu être lancée ici...)
   this.tabSelect= SlideTabSelect;                //si auto = 0, déclenchée par le clic sur les bullets

   this.show = SlideShow;

   this.startPause = SlideStartPause;
   this.stopPause = SlideStopPause;
   this.executePause = SlideExecutePause;

   this.startTransition = SlideStartTransition;

   if (this.transition == SLIDE_TRANSITION_OPACITY1) this.initializeTransition = SlideInitializeTransitionOpacity1;
   else if (this.transition == SLIDE_TRANSITION_LEFT1) this.initializeTransition = SlideInitializeTransitionLeft1;
   else if (this.transition == SLIDE_TRANSITION_LEFT2) this.initializeTransition = SlideInitializeTransitionLeft2;
   else if (this.transition == SLIDE_TRANSITION_LEFT3) this.initializeTransition = SlideInitializeTransitionLeft3;
   else if (this.transition == SLIDE_TRANSITION_RIGHT1) this.initializeTransition = SlideInitializeTransitionRight1;
   else if (this.transition == SLIDE_TRANSITION_RIGHT2) this.initializeTransition = SlideInitializeTransitionRight2;
   else if (this.transition == SLIDE_TRANSITION_RIGHT3) this.initializeTransition = SlideInitializeTransitionRight3;
   else this.initializeTransition = SlideInitializeTransitionNone;

   if (this.transition == SLIDE_TRANSITION_OPACITY1) this.executeTransition = SlideExecuteTransitionOpacity1;
   else if (this.transition == SLIDE_TRANSITION_LEFT1) this.executeTransition = SlideExecuteTransitionLeft1;
   else if (this.transition == SLIDE_TRANSITION_LEFT2) this.executeTransition = SlideExecuteTransitionLeft2;
   else if (this.transition == SLIDE_TRANSITION_LEFT3) this.executeTransition = SlideExecuteTransitionLeft3;
   else if (this.transition == SLIDE_TRANSITION_RIGHT1) this.executeTransition = SlideExecuteTransitionRight1;
   else if (this.transition == SLIDE_TRANSITION_RIGHT2) this.executeTransition = SlideExecuteTransitionRight2;
   else if (this.transition == SLIDE_TRANSITION_RIGHT3) this.executeTransition = SlideExecuteTransitionRight3;
   else this.executeTransition = SlideExecuteTransitionNone;

   this.stopTransition = SlideStopTransition;

   this.addAncre = SlideAddAncre;
   this.ancres = null;

   this.pauseRunning = 0;                         //si la pause est active
   this.pauseTimer = -1;                          //timeout utilisé pour la pause entre les slides

   this.transitionRunning = 0;                    //si la tansition est active
   this.transitionTimer = -1;                     //timeout utilisé pour l'animation de la transition

   this.currentSlideIndex = -1;
   this.currentSlide = null;

   this.nextSlideIndex = -1;
   this.nextSlide = null;
 
   this.waitingNextSlideIndex = -1;               //utilisé si un tab est cliqué alors qu'une transition est déjà en cours
 
   this.started = 0;                              //si auto est à 0, utilisé pour ne pas que que l'élément de départ de la transition soit celui de destination au lancement du slide (si je me rappelle bien)

   //
   //enregistre cet objet dans la variable globale 'slides' (qui sera initialisée lors du onload de la page, via la fonction setupSlideshows() du framework général)
   //
   if (slides==null) slides = new Array();
   slides[slides.length] = this;
   }

function setupSlideshows()
   {
   if (slides==null) return;
   for (var i=0; i<slides.length; i++)
       {
       slide = slides[i];
       slide.getSlideElements(); 
       slide.show(0);
       if (slide.auto!=0 && slide.elArray.length>1)
          {
          slide.startPause();       
          }
       } 
   }

function SlideShow(index)
   {
   if (index<0) index=0;
   if (index>=slide.elArray.length) index=0;

   this.currentSlideIndex = index;
   this.currentSlide = this.elArray[this.currentSlideIndex];

   this.currentSlide.style.display= "block";

   this.elArray[index].style.zIndex = 1;

   if (isMSIE)
      {      
      this.currentSlide.style.filter = "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      }
   else
      {   
      this.currentSlide.style.opacity = "100";
      } 
   }

function SlideStartPause()
   {
   this.pauseRunning = 1;
   this.pauseTimer = setTimeout(this.id + '.executePause()', this.pause * 1000);
   }

function SlideStopPause()
   {
   this.pauseRunning = 0;
   clearTimeout(this.pauseTimer);
   }

function SlideExecutePause()
   {
   this.pauseRunning = 0;
   this.startTransition(this.currentSlideIndex + 1);       
   }


function SlideStartTransition(nextIndex)
   {
   if (this.transitionRunning==1)
      {
      this.waitingNextSlideIndex = nextIndex;
      return;
      }

   this.transitionRunning = 1;

   if (nextIndex<0) nextIndex=0;
   if (nextIndex>=this.elArray.length) nextIndex=0;

   this.nextSlideIndex = nextIndex;
   this.nextSlide = this.elArray[this.nextSlideIndex];

   if (this.tab == SLIDE_TAB_PUCES1)
      {
      if (this.currentSlideIndex!=-1 && this.tabsArray[this.currentSlideIndex]!=null)
         {
         this.tabsArray[this.currentSlideIndex].src = this.imgDir + "/tabs-bullet-off.gif";
         }
      if (this.tabsArray[this.nextSlideIndex]!=null) 
         {
         this.tabsArray[this.nextSlideIndex].src = this.imgDir + "/tabs-bullet-on.gif";
         }
      }
   else if (this.tab == SLIDE_TAB_NUMBERS1 || this.tab == SLIDE_TAB_LABELS1)
      {
      if (this.currentSlideIndex!=-1 && this.tabsArray[this.currentSlideIndex]!=null)
         {
         this.tabsArray[this.currentSlideIndex].className = "tabs1ItemOff";
         }
      if (this.tabsArray[this.nextSlideIndex]!=null) 
         {
         this.tabsArray[this.nextSlideIndex].className = "tabs1ItemOn";
         }
      }
   else if (this.tab == SLIDE_TAB_NUMBERS2 || this.tab == SLIDE_TAB_LABELS2)
      {
      if (this.currentSlideIndex!=-1 && this.tabsArray[this.currentSlideIndex]!=null)
         {
         this.tabsArray[this.currentSlideIndex].className = "tabs2ItemOff";
         }
      if (this.tabsArray[this.nextSlideIndex]!=null) 
         {
         this.tabsArray[this.nextSlideIndex].className = "tabs2ItemOn";
         }
      }
   else if (this.tab == SLIDE_TAB_NUMBERS3 || this.tab == SLIDE_TAB_LABELS3)
      {
      if (this.currentSlideIndex!=-1 && this.tabsArray[this.currentSlideIndex]!=null)
         {
         this.tabsArray[this.currentSlideIndex].className = "tabs3ItemOff";
         }
      if (this.tabsArray[this.nextSlideIndex]!=null) 
         {
         this.tabsArray[this.nextSlideIndex].className = "tabs3ItemOn";
         }
      }
   else if (this.tab == SLIDE_TAB_NUMBERS4 || this.tab == SLIDE_TAB_LABELS4)
      {
      if (this.currentSlideIndex!=-1 && this.tabsArray[this.currentSlideIndex]!=null)
         {
         this.tabsArray[this.currentSlideIndex].className = "tabs4ItemOff";
         }
      if (this.tabsArray[this.nextSlideIndex]!=null) 
         {
         this.tabsArray[this.nextSlideIndex].className = "tabs4ItemOn";
         }
      }

   this.initializeTransition();       
   this.executeTransition();       
   }

function SlideStopTransition()
   {
   this.transitionRunning = 0;
   clearTimeout(this.pauseTimer);

   this.elArray[this.currentSlideIndex].style.zIndex = 0;
   this.elArray[this.currentSlideIndex].style.display = "none";

   this.currentSlide = this.nextSlide;
   this.currentSlideIndex = this.nextSlideIndex;
   this.nextSlide = null;
   this.nextSlideIndex = -1;

   this.elArray[this.currentSlideIndex].style.zIndex = 1;
   this.elArray[this.currentSlideIndex].style.display = "block";

   if (this.waitingNextSlideIndex != - 1)
      {
      var next = this.waitingNextSlideIndex; 
      this.waitingNextSlideIndex = -1;
      this.startTransition(next);
      return;
      }

   if (this.auto!=0) this.startPause();
   }

//********************************************************************************
//Transition: immédiate
//********************************************************************************
function SlideInitializeTransitionNone()
   {
   this.currentSlide.style.display = "none";
   this.nextSlide.style.display = "block";
   }

function SlideExecuteTransitionNone()
   {
   this.stopTransition();
   }


//********************************************************************************
//Transition: fondue
//********************************************************************************
function changeOpacity(object, opacity) 
    {
    var s = object.style;
    s.opacity = (opacity / 100);
    s.MozOpacity = (opacity / 100);
    s.KhtmlOpacity = (opacity / 100);
    s.filter = "alpha(opacity=" + opacity + ")";
   }

function SlideInitializeTransitionOpacity1()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";
      
   changeOpacity(this.currentSlide, 100);
   changeOpacity(this.nextSlide, 0);

   this.currentSlide.style.zIndex = 1;
   this.nextSlide.style.zIndex = 2;  

   this.t = 90;
   }

function SlideExecuteTransitionOpacity1()
   {
   if(this.t > 270) this.t = 270;

   t2 = this.t + 180;
   rad = this.t*(Math.PI/180);
   opacite = Math.round((Math.sin(rad)) * 1000) / 1000;
   rad2 = t2*(Math.PI/180);
   opacite2 = Math.round((Math.sin(rad2)) * 1000) / 1000;
   
   op1 = Math.round(((opacite / 2) + .5) * 100);
   op2 = Math.round(((opacite2 / 2) + .5) * 100);

   changeOpacity(this.currentSlide, op1);
   changeOpacity(this.nextSlide, op2);
   
   if (this.t >= 270)
      {
      if (this.auto == 1) this.currentSlide.style.display = "none";
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionOpacityIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionOpacityIntervals[this.vitesseTransition]);
   }


//********************************************************************************
//Transition: les deux blocs droite -> gauche
//********************************************************************************
function SlideInitializeTransitionLeft1()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";
      
   this.currentSlide.style.zIndex = 1;
   this.nextSlide.style.zIndex = 1;  

   this.t = 0;
   }

function SlideExecuteTransitionLeft1()
   {
   if(this.t > 100) this.t = 100;

   var offset = - ((this.t / 100) * this.currentSlide.offsetWidth);
   this.currentSlide.style.left = offset + "px";              
   this.nextSlide.style.left = (this.currentSlide.offsetWidth + offset) + "px";
   
   if (this.t >= 100)
      {
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionLeftIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionLeftIntervals[this.vitesseTransition]);
   }

//********************************************************************************
//Transition: le nouveau bloc droite -> gauche
//********************************************************************************
function SlideInitializeTransitionLeft2()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";
      
   this.currentSlide.style.left = "0px";              
   this.nextSlide.style.left = "0px";              

   this.currentSlide.style.zIndex = 1;
   this.nextSlide.style.zIndex = 2;  

   this.t = 0;
   }

function SlideExecuteTransitionLeft2()
   {
   if(this.t > 100) this.t = 100;

   var offset = - ((this.t / 100) * this.currentSlide.offsetWidth);
   this.nextSlide.style.left = (this.currentSlide.offsetWidth + offset) + "px";
   
   if (this.t >= 100)
      {
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionLeftIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionLeftIntervals[this.vitesseTransition]);
   }


//********************************************************************************
//Transition: l'ancien bloc droite -> gauche
//********************************************************************************
function SlideInitializeTransitionLeft3()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";

   this.currentSlide.style.left = "0px";              
   this.nextSlide.style.left = "0px";              
      
   this.currentSlide.style.zIndex = 2;
   this.nextSlide.style.zIndex = 1;  

   this.t = 0;
   }

function SlideExecuteTransitionLeft3()
   {
   if(this.t > 100) this.t = 100;

   var offset = - ((this.t / 100) * this.currentSlide.offsetWidth);
   this.currentSlide.style.left = offset + "px";              
   
   if (this.t >= 100)
      {
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionLeftIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionLeftIntervals[this.vitesseTransition]);
   }

//********************************************************************************
//Transition: les deux blocs gauche -> droite
//********************************************************************************
function SlideInitializeTransitionRight1()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";
      
   this.currentSlide.style.zIndex = 1;
   this.nextSlide.style.zIndex = 1;  

   this.t = 0;
   }

function SlideExecuteTransitionRight1()
   {
   if(this.t > 100) this.t = 100;

   var offset = ((this.t / 100) * this.currentSlide.offsetWidth);
   this.currentSlide.style.left = offset + "px";              
   this.nextSlide.style.left = (- this.currentSlide.offsetWidth + offset) + "px";
   
   if (this.t >= 100)
      {
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionLeftIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionLeftIntervals[this.vitesseTransition]);
   }

//********************************************************************************
//Transition: le nouveau bloc gauche -> droite
//********************************************************************************
function SlideInitializeTransitionRight2()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";
      
   this.currentSlide.style.left = "0px";              
   this.nextSlide.style.left = "0px";              

   this.currentSlide.style.zIndex = 1;
   this.nextSlide.style.zIndex = 2;  

   this.t = 0;
   }

function SlideExecuteTransitionRight2()
   {
   if(this.t > 100) this.t = 100;

   var offset = ((this.t / 100) * this.currentSlide.offsetWidth);
   this.nextSlide.style.left = (- this.currentSlide.offsetWidth + offset) + "px";
   
   if (this.t >= 100)
      {
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionLeftIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionLeftIntervals[this.vitesseTransition]);
   }

//********************************************************************************
//Transition: l'ancien bloc gauche -> droite
//********************************************************************************
function SlideInitializeTransitionRight3()
   {
   this.currentSlide.style.display = "block";
   this.nextSlide.style.display = "block";
      
   this.currentSlide.style.left = "0px";              
   this.nextSlide.style.left = "0px";              

   this.currentSlide.style.zIndex = 2;
   this.nextSlide.style.zIndex = 1;  

   this.t = 0;
   }

function SlideExecuteTransitionRight3()
   {
   if(this.t > 100) this.t = 100;

   var offset = ((this.t / 100) * this.currentSlide.offsetWidth);
   this.currentSlide.style.left = offset + "px";              
   
   if (this.t >= 100)
      {
      this.stopTransition();
      return;
      }
   
   this.t += vitesseTransitionLeftIncrements[this.vitesseTransition];
   this.transitionTimer = setTimeout(this.id + '.executeTransition()', vitesseTransitionLeftIntervals[this.vitesseTransition]);
   }


//********************************************************************************
//Stoppe le passage d'un bloc à l'autre si le curseur se trouve au-dessus du bloc
//********************************************************************************
function tover(on, element) 
   {   
   if (on == 1)
      {   
      //au survol, la transition est interrompue.
      this.stopPause();
      }
   else
      {      
      this.startPause();
      }
   }


//********************************************************************************
//Sélectionne un slide via un onglet
//********************************************************************************
function SlideTabSelect(index)
   {
   this.startTransition(index);
   }

//********************************************************************************
//Crée la liste des DIV à afficher dans this.elArray
//********************************************************************************
function getSlideElements()
   {
   var slidesElement = document.getElementById(this.id + 'element');
   var tabsElement = document.getElementById(this.id + 'tabs');

   this.elArray = new Array();
   this.tabsArray = new Array();

   for (var i=0; i <this.slidesNumber; i++)
       {
       var slide = document.getElementById(this.id + '_slide'+i);
       if (slide!=null) 
          {
          this.elArray[this.elArray.length]=slide;   
          if (this.tab)
             {
             var tab = document.getElementById(this.id + '_tab'+i);
             if (tab!=null) this.tabsArray[this.tabsArray.length]=tab;
             else this.tabsArray[this.tabsArray.length]=null;   
             }   
          }
       }

   maxHeight = 0;

   for (var i=0; i <this.elArray.length; i++)
       {
       if (this.elArray[i].offsetHeight > maxHeight)
          {
          maxHeight = this.elArray[i].offsetHeight;
          }
       }

   maxWidth = slidesElement.offsetWidth;
   if (maxWidth==0)
      {
      for (var i=0; i <this.elArray.length; i++)
          {
          if (this.elArray[i].offsetWidth > maxWidth)
             {
             maxWidth = this.elArray[i].offsetWidth;
             }
          }
      }

   if (maxWidth==0) maxWidth=200;
   if (maxHeight==0) maxHeight=200;


   slidesElement.style.width = maxWidth + "px"; 

   var tabsHeight = 0;
   if (tabsElement!=null && !this.tabOutside) if (tabsElement.offsetHeight > 0) tabsHeight=tabsElement.offsetHeight;
     
   slidesElement.style.height = (maxHeight) + "px";
   slidesElement.parentNode.style.height = (maxHeight + tabsHeight) + "px";
      
   //force la hauteur et la largeur des éléments du slideshow ainsi que celles des blocs qui le contiennent

   for (i = 0; i <this.elArray.length; i++)
       {
       this.elArray[i].style.zIndex = 0;
       this.elArray[i].style.width = maxWidth + "px";
       this.elArray[i].style.height = maxHeight + "px";
       this.elArray[i].style.top = "0px";

       this.elArray[i].style.display = "none";

       // pour IE récupère la valeur de backgroundColor actif, pour ne pas avoir une pixellisation dûe au filtre
       if (isMSIE)
          {
          var b = "";
          var c = this.elArray[i];
          while (c!=null && b=="")
             {
             b = c.currentStyle['backgroundColor'];
             if (b==null) b="";
             if (b=="transparent") b="";
             c = c.parentNode;
             }
          if (b=="") b="#ffffff";
          this.elArray[i].style.backgroundColor =  b;
          }
       }   

   }


function SlideAddAncre(id, ancre)
   {
   if (this.ancres==null) this.ancres=new Array();
   this.ancres[this.ancres.length] = new SlideAncre(id, ancre);
   }

function SlideAncre(id, ancre)
   {
   this.id = id;
   this.ancre = ancre;
   }

function showPresentation(ancre)
   {
   if (slides==null) return;
   for (var i=0; i<slides.length; i++)
       {
       slide = slides[i];
       if (slide.ancres!=null)
          {
          for (var j=0; j<slide.ancres.length; j++)
              {
              if (slide.ancres[j].ancre == ancre)
                 {
                 slide.tabSelect(slide.ancres[j].id);
                 return;
                 }
              }
          }
       }
   }

function Galerie(id, pagesNumber, tab, tabOutside, imgDir)
   {   
   this.id = id;
   this.pagesNumber = pagesNumber;
   this.tab = tab;
   this.tabOutside = tabOutside;
   this.imgDir = imgDir;

   this.pagesArray = new Array();
   this.tabsArray = new Array();
   //
   //Methods
   //
   this.show = GalerieShow;


   var tabsElement = document.getElementById(this.id + 'tabs');

   for (var i=0; i <this.pagesNumber; i++)
       {
       var slide = document.getElementById(this.id + '_slide'+i);
       if (slide!=null) 
          {
          this.pagesArray [this.pagesArray.length]=slide;   
          var tab = document.getElementById(this.id + '_tab'+i);
          if (tab!=null) this.tabsArray[this.tabsArray.length]=tab;
          else this.tabsArray[this.tabsArray.length]=null;   
          }
       }

   maxHeight = 0;

   for (var i=0; i <this.pagesArray.length; i++)
       {
       if (this.pagesArray[i].offsetHeight > maxHeight)
          {
          maxHeight = this.pagesArray[i].offsetHeight;
          }
       this.pagesArray[i].style.display = "none";
       }

   if (maxHeight==0) maxHeight=200;

   var tabsHeight = 0;
   if (tabsElement!=null && !this.tabOutside) if (tabsElement.offsetHeight > 0) tabsHeight=tabsElement.offsetHeight;

   var slide = document.getElementById(this.id + 'element');
   slide.style.height = (maxHeight + tabsHeight) + "px";
   slide.parentNode.style.height = (maxHeight + tabsHeight) + "px";

   this.currentPageIndex = -1;

   this.show(0);
   }

function GalerieShow(index)
   {
   if (index <0) index = 0; else if (index > this.pagesNumber) index = 0;
   if (index == this.currentPageIndex) return;
   if (this.currentPageIndex!=-1)
      {
      this.pagesArray[this.currentPageIndex].style.display = "none";
      if (this.tab == SLIDE_TAB_PUCES1)
         this.tabsArray[this.currentPageIndex].src = this.imgDir + "/tabs-bullet-off.gif";
      else if (this.tab == SLIDE_TAB_NUMBERS1)
         this.tabsArray[this.currentPageIndex].className = "tabs1ItemOff";
      else if (this.tab == SLIDE_TAB_NUMBERS2)
         this.tabsArray[this.currentPageIndex].className = "tabs2ItemOff";
      else if (this.tab == SLIDE_TAB_NUMBERS3)
         this.tabsArray[this.currentPageIndex].className = "tabs3ItemOff";
      else if (this.tab == SLIDE_TAB_NUMBERS4)
         this.tabsArray[this.currentPageIndex].className = "tabs4ItemOff";
      }

   this.currentPageIndex = index;
   this.pagesArray[this.currentPageIndex].style.display = "block";

   if (this.tab == SLIDE_TAB_PUCES1)
      this.tabsArray[this.currentPageIndex].src = this.imgDir + "/tabs-bullet-on.gif";
   else if (this.tab == SLIDE_TAB_NUMBERS1)
      this.tabsArray[this.currentPageIndex].className = "tabs1ItemOn";
   else if (this.tab == SLIDE_TAB_NUMBERS2)
      this.tabsArray[this.currentPageIndex].className = "tabs2ItemOn";
   else if (this.tab == SLIDE_TAB_NUMBERS3)
      this.tabsArray[this.currentPageIndex].className = "tabs3ItemOn";
   else if (this.tab == SLIDE_TAB_NUMBERS4)
      this.tabsArray[this.currentPageIndex].className = "tabs4ItemOn";
   }


