// JavaScript Document
<!--

// On définit 3 variables, selon les propriétés de calques gérées par le navigateur
var ie = document . all ? 1 : 0
var ns = document . layers ? 1 : 0
var ns6 = document.getElementById && !document.all ? 1 : 0

// Position en hauteur une fois le menu ouvert
var topOpen = 10;
// Position en hauteur lorsque le menu est fermé
var topClosed = 10;

var master = new Object("element")
master . curLeft = -200; // Position de départ du calque
master . curTop = 10; // Hauteur de départ du calque
master . gapLeft = 0;
master . gapTop = 0;
master . timer = null;

function moveAlong(layerName, paceLeft, paceTop, fromLeft, fromTop){
    clearTimeout(eval(layerName) . timer);

    if (eval(layerName) . curLeft != fromLeft) {
      // Calcul position horizontale
        if ((Math . max(eval(layerName) . curLeft, fromLeft) - Math . min(eval(layerName) . curLeft, fromLeft)) < paceLeft) {
            eval(layerName) . curLeft = fromLeft;
        } else if (eval(layerName) . curLeft < fromLeft) {
            eval(layerName) . curLeft = eval(layerName) . curLeft + paceLeft;
        } else if (eval(layerName) . curLeft > fromLeft) {
            eval(layerName) . curLeft = eval(layerName) . curLeft - paceLeft;
        } 
        // Définition de la position horizontale du menu
        if (ie) {
            document . all[layerName] . style . left = eval(layerName) . curLeft;
        } 
        if (ns) {
            document[layerName] . left = eval(layerName) . curLeft;
        } 
        if (ns6) {
            document . getElementById(layerName) . style . left = eval(layerName) . curLeft;
        } 
    } 
  
    if (eval(layerName) . curTop != fromTop) {
      // Calcul position verticale
        if ((Math . max(eval(layerName) . curTop, fromTop) - Math . min(eval(layerName) . curTop, fromTop)) < paceTop) {
            eval(layerName) . curTop = fromTop;
        } else if (eval(layerName) . curTop < fromTop) {
            eval(layerName) . curTop = eval(layerName) . curTop + paceTop;
        } else if (eval(layerName) . curTop > fromTop) {
            eval(layerName) . curTop = eval(layerName) . curTop - paceTop;
        } 
        // Définition position verticale du menu
        if (ie) {
            document . all[layerName] . style . top = eval(layerName) . curTop;
        } 
        if (ns) {
            document[layerName] . top = eval(layerName) . curTop;
        } 
        if (ns6) {
            document . getElementById(layerName) . style . top = eval(layerName) . curTop;
        } 
    } 
    eval(layerName) . timer = setTimeout('moveAlong("' + layerName + '",' + paceLeft + ',' + paceTop + ',' + fromLeft + ',' + fromTop + ')', 30)

} // Fin function MoveAlong

function setPace(layerName, fromLeft, fromTop, motionSpeed){
    eval(layerName) . gapLeft = (Math . max(eval(layerName) . curLeft, fromLeft) - Math . min(eval(layerName) . curLeft, fromLeft)) / motionSpeed;
    eval(layerName) . gapTop = (Math . max(eval(layerName) . curTop, fromTop) - Math . min(eval(layerName) . curTop, fromTop)) / motionSpeed;
    // Ouvre le menu
    moveAlong(layerName, eval(layerName) . gapLeft, eval(layerName) . gapTop, fromLeft, fromTop)
} 

// Définition du menu à "fermé" lors de l'arrivée sur le site
var expandState = 0;

// Fonction Expand ()
function expand(){
   if (expandState == 0) { // si le menu est fermé
        // Passe les paramètres d'ouverture à la fonction setPace qui contient la fonction d'ouverture "moveAlong()"
        // setPace ("nom du calque", "position par rapport à la gauche", "position en hauteur", "vitesse d'ouverture")
        setPace("master", 0, topOpen, 10); 
        // Modification de l'image "menu" :
        if (ie) {
            document . menutop . src = "templates/img/nos_biens.gif";
        } else if (ns6) {
            document . getElementById("img_menu") . innerHTML = "<img src=\"templates/img/nos_biens.gif\" border=\"0\" >";
        } 
        expandState = 1; // définition de l'état à "ouvert"
    }
    else { // Si le menu est ouvert
        setPace("master", -200, topClosed, 10); // Referme le menu
        // Modification de l'image "menu" :
        if (ie) {
            document . menutop . src = "templates/img/nos_biens.gif";
        } else if (ns6) {
            document . getElementById("img_menu") . innerHTML = "<img src=\"templates/img/nos_biens.gif\" border=\"0\">";
        } 
        expandState = 0; // définition de l'état à "fermé"
    }
} 
//-->