﻿			   function Container(elem)
            {
               this.elem = elem;
               this.callBack = null;

               var UglyHack = this;

               this.addEvent = function (eventName, callBack)
               {
                  this.callBack = callBack;
                  if (window.addEventListener)
                     this.elem.addEventListener(eventName, this.listener, false);
                  else
                     this.elem.attachEvent("on" + eventName, this.listener);
               }

               this.listener = function ()
               {
                  eval(UglyHack.callBack);
               }
            }

            function lancer_carrousels()
            {
				var n = 0;
				while ( n<carrousels.length )
				{
					load_carrousel(n);
			   				n++;
				}
				//alert('fin lancer carrousels' +carrousels[0][nb_elts]);

				}


               function load_carrousel(carrousel_num)
               {
			    var carrousel = carrousels[carrousel_num][nom];
				var elt_num = carrousels[carrousel_num][elt_courant];
				var elt_max = carrousels[carrousel_num][nb_elts];
				// INITIALISER elt_max
				while(document.getElementById(carrousel + "_txt_" + elt_max) != null)
				{
				elt_max++;
				}
				elt_max--;
				carrousels[carrousel_num][nb_elts] = elt_max;
				//gl_max = elt_max;
				//alert('fin load carrousel' +carrousels[0][nb_elts]);
				
                  // branchement boutons prev, pause, next
                  var bouton_prev = new Container(document.getElementById(carrousel + "_prev"));
                  bouton_prev.addEvent("click", "desk_prev(0," + carrousel_num + ");");
                  carrousels[carrousel_num][btn_prev] = bouton_prev;
				  var bouton_next =  new Container(document.getElementById(carrousel + "_next"));
                  bouton_next.addEvent("click", "desk_next(0," + carrousel_num + ");");
				  carrousels[carrousel_num][btn_next] = bouton_next;
			   }

               function desk(carrousel_num)
               {
                  var num = carrousels[carrousel_num][elt_courant];
				  var carrousel = carrousels[carrousel_num][nom];
                  var cpt;
                  for (cpt = 1; cpt <= carrousels[carrousel_num][nb_elts]; ++cpt)
                     if (cpt != num && document.getElementById(carrousel + "_txt_" + cpt) != null)
                     {
					   document.getElementById(carrousel + "_txt_" + cpt).style.display = "none";
                     }
					// end for
					 if (document.getElementById(carrousel + "_txt_" + num) != null)
                  {
                     document.getElementById(carrousel + "_txt_" + num).style.display = "block";
                  }
				  document.getElementById(carrousel + "_prev").style.display = "block";
				  document.getElementById(carrousel + "_prev_f").style.display = "none";
				  document.getElementById(carrousel + "_next").style.display = "block";
				  document.getElementById(carrousel + "_next_f").style.display = "none";
				  document.getElementById(carrousel + "_archives").style.display = "none";
				  if (num == 1)
				  {
				  document.getElementById(carrousel + "_prev").style.display = "none";
				  document.getElementById(carrousel + "_prev_f").style.display = "block";
				  }
				  if (num == carrousels[carrousel_num][nb_elts])
				  {
				  document.getElementById(carrousel + "_next").style.display = "none";
				  document.getElementById(carrousel + "_next_f").style.display = "block";
				  if (carrousels[carrousel_num][archives] == 1)
				  document.getElementById(carrousel + "_archives").style.display = "block";
				  }
               }

               function desk_next(cycle, carrousel_num)
               {
                  
				  carrousels[carrousel_num][elt_courant]++;
                  if (carrousels[carrousel_num][elt_courant] > carrousels[carrousel_num][nb_elts] && cycle == 0)
                  {
                     carrousels[carrousel_num][elt_courant] = carrousels[carrousel_num][nb_elts];
                     return;
                  }
                  if (carrousels[carrousel_num][elt_courant] > carrousels[carrousel_num][nb_elts] && cycle == 1)
                     carrousels[carrousel_num][elt_courant] = 1;
                  desk(carrousel_num);
               }

               function desk_prev(cycle, carrousel_num)
               {
                  carrousels[carrousel_num][elt_courant]--;
                  if (carrousels[carrousel_num][elt_courant] < 1 && cycle == 0)
                  {
                     carrousels[carrousel_num][elt_courant] = 1;
                     return;
                  }
                  if (carrousels[carrousel_num][elt_courant] < 1 && cycle == 1)
                     carrousels[carrousel_num][elt_courant] = carrousels[carrousel_num][nb_elts];
                  desk(carrousel_num);
               }

            // programme principal
				//alert('avant lancer carrousels' +carrousels[0][nb_elts]);
			if (window.addEventListener)
			{
               window.addEventListener("load", lancer_carrousels, false);
			   
				//alert('après lancer carrousels' +carrousels[0][nb_elts]);

			}
            else
			{
               window.attachEvent("onload", lancer_carrousels);
			   
			}

			   

