﻿var num = 0; /* Numéro de l'onglet du Slider */
var memoire = 0; /* Mémoire le contenu */
var memoire2 = 0; /* Mémoire pour la position du Slider */
var largGlobal = 0; /* Largeur du div sliderGlobal2 */
var actif = false; /* Pour savoir si le slider est occupé ou pas */
var redim = true; /* Pour savoir si on redimensionne la fenêtre */
var maxOnglet = 4;

Sys.Application.add_load(function()
{
    if($get('sliderGlobal'))
    {
        maximum();
        slider();
    }
}); 

Sys.Application.add_load(function()
{
    if($get('sliderGlobal')) $addHandler(window, 'resize', slider);
});

maximum = function()
{
    for(i=0;i<1;maxOnglet++)
    {
        if(!document.getElementById('sliderOnglet'+maxOnglet))
            i++
    }
    maxOnglet--;
}

slider = function()
{
    if($get('sliderGlobal'))
    {
        var b = Sys.UI.DomElement.getBounds($get('xfd'));
        var c = Sys.UI.DomElement.getBounds($get('sliderMini'+num));
        var sGlobal = b.width-2;
        var hGlobal = c.height;
        var sGlobal2 = sGlobal*maxOnglet;
        var sMini = sGlobal-30;
        largGlobal = sGlobal;

        this.contenu = "sliderMini" + num;
        this.contenuM =  "sliderMini" + memoire;

        if ($get(this.contenuM)) // Vérification pour savoir si l'Elément existe
        {
            $get(this.contenuM).style.display = "none";
            $get(this.contenu).style.display = "block";
            $get('sliderGlobal').style.width = sGlobal+"px";
            $get('sliderGlobal').style.height = hGlobal+"px";
            $get('sliderGlobal2').style.width = sGlobal2+"px";
            for(i=0;i<maxOnglet;i++)
            {
                $get('sliderMini'+i).style.width = sMini+"px";  
            }
            $get("sliderOnglet"+num).className="sliderSelect";
        }
        if(redim && $get('sliderGlobal'))
        {
            var c = Sys.UI.DomElement.getBounds($get('sliderMini'+num));
            var hGlobal = c.height;
            $get('sliderGlobal').style.height = hGlobal+"px";
            $get('sliderGlobal2').style.left = -largGlobal*memoire+"px";
        }
    }
}

function sliderOnglet(temp)
{
    if(!actif)
    {
        num = temp;
        pos = largGlobal*num;
        redim = false;
        
        if(Math.abs(memoire2) != pos){pos = Math.abs(memoire2) - pos;}
        else{return}
        
        this.deCombien = pos; // Valeur du défilement pour le Slider en px
        this.qui = "sliderGlobal2"; // Elément qui sera slider
        this.max = maxOnglet - 1;
        this.onglet = "sliderOnglet" + num;
        this.ongletM = "sliderOnglet" + memoire;
        this.contenu = "sliderMini" + num;
        this.contenuM =  "sliderMini" + memoire;
        
        document.getElementById(this.ongletM).className="";
        document.getElementById(this.onglet).className="sliderSelect";
        
        moveH(this.deCombien,this.qui); // On lance la fonction du slider
        affichFleche(num); // Fonction pour l'affichage des Flêches
        memoire = num; // On garde en mémoire la valeur de l'onglet sélectionné
    }
}

function sliderFleche(gauche)
{
    if(!actif)
    {
        this.max = maxOnglet - 1;
        this.larg = -this.max*largGlobal
       
        if(gauche)
        {
            this.temp = num - 1;
            this.temp < (0) ? num = 0 : num = temp;
            
            pos=largGlobal;
            if(memoire2 >= 0){
            pos=0;}
        }
        else
        {
            this.temp = num + 1;
            this.temp > (max) ? num = max : num = temp;
            
            pos=-largGlobal;
            if(memoire2 <= larg){
            pos=0;}
        }
        
        redim = false;
        
        this.deCombien = pos; // Valeur du défilement pour le Slider en px
        this.qui = "sliderGlobal2"; // Element qui sera slider
        this.onglet = "sliderOnglet" + num;
        this.ongletM = "sliderOnglet" + memoire;
        this.contenu = "sliderMini" + num;
        this.contenuM =  "sliderMini" + memoire;
        this.c = Sys.UI.DomElement.getBounds($get('sliderMini'+num));
        this.hauteur = c.height;
        
        document.getElementById(this.ongletM).className="";
        document.getElementById(this.onglet).className="sliderSelect";
        
        affichFleche(num);
        moveH(this.deCombien,this.qui);
        memoire = num;
    }
}

function affichFleche(temp){
    if(temp == 0){
        document.getElementById("sliderLeft").className="sliderLeftOff";
        document.getElementById("sliderRight").className="sliderRightOn";
    }
    else if(temp == max){
        document.getElementById("sliderLeft").className="sliderLeftOn";
        document.getElementById("sliderRight").className="sliderRightOff";
    }
    else{
        document.getElementById("sliderLeft").className="sliderLeftOn";
        document.getElementById("sliderRight").className="sliderRightOn";
    }
}

