// JScript File
function UpdateValue(sIdInput, sValue) {
    if (document.getElementById(sIdInput)) {
        document.getElementById(sIdInput).innerHTML = sValue;
    }
}
function UpdateInput(sIdInput, sIdOutput) {
    if (document.getElementById(sIdInput) && document.getElementById(sIdOutput)) {
        document.getElementById(sIdOutput).innerHTML = document.getElementById(sIdInput).innerHTML;
    }
}

function ShowCommentaire(oDV, oLib, bShow) {

    if (bShow && oLib.innerHTML.length > 0) {
        oDV.style.top = tempY + 'px';
        oDV.style.left = tempX + 'px';
        window.status = tempX + 'x' + tempY
        oDV.style.display = 'block';
        //alert(bShow);
    } else {
        oDV.style.display = 'none';
    }
}

function ShowEditCommentaire(oDV, bShow) {

    if (bShow) {
        oDV.style.top = tempY + 'px';
        oDV.style.left = tempX + 'px';
        window.status = tempX + 'x' + tempY
        oDV.style.display = 'block';
        //alert(bShow);
    } else {
        oDV.style.display = 'none';
    }
}

function UpdateCommentaire(oSpan, oTexte) {
    var remplace = /\n/g;
    oSpan.innerHTML = oTexte.value.replace(remplace, '<br />');
}


// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
var IE = document.all ? true : false

// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE)

// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseXY;

// Temporary variables to hold mouse x-y pos.s
var tempX = 0
var tempY = 0

// Main function to retrieve mouse x-y pos.s

function getMouseXY(e) {
    //get scroll gap for IE
    if (self.pageYOffset) {
        rX = self.pageXOffset;
        rY = self.pageYOffset;
    }
    else if (document.documentElement && document.documentElement.scrollTop) {
        rX = document.documentElement.scrollLeft;
        rY = document.documentElement.scrollTop;
    }
    else if (document.body) {
        rX = document.body.scrollLeft;
        rY = document.body.scrollTop;
    }
    if (IE) { // grab the x-y pos.s if browser is IE
        tempX = event.clientX + rX
        tempY = event.clientY + rY
    } else {  // grab the x-y pos.s if browser is NS
        tempX = e.pageX
        tempY = e.pageY
    }
    // catch possible negative values in NS4
    if (tempX < 0) { tempX = 0 }
    if (tempY < 0) { tempY = 0 }

    // show the position values in the form named Show
    // in the text fields named MouseX and MouseY
    //document.Show.MouseX.value = tempX
    //document.Show.MouseY.value = tempY
    return true
}

function showInfoPays(sBloc, oLI) {
    if (document.getElementById('dvF')) document.getElementById('dvF').style.display = 'none';
    if (document.getElementById('dvS')) document.getElementById('dvS').style.display = 'none';
    if (document.getElementById('dvG')) document.getElementById('dvG').style.display = 'none';
    if (document.getElementById('dvH')) document.getElementById('dvH').style.display = 'none';
    if (document.getElementById('dvT')) document.getElementById('dvT').style.display = 'none';
    if (document.getElementById('dvI')) document.getElementById('dvI').style.display = 'none';
    if (document.getElementById('dvA')) document.getElementById('dvA').style.display = 'none';
    if (document.getElementById('dvE')) document.getElementById('dvE').style.display = 'none';
    var listItems = document.getElementsByName("liip");
    for (i = 0; i < listItems.length; i++)
        listItems[i].className = "";
    oLI.className = "sommaireActif";
    document.getElementById('dv' + sBloc).style.display = 'block';
}

// gestion des gonlets de la page nous-contacter
function OngletContact(eltId) {
    arrLinkId = new Array('_0', '_1', '_2', '_3');
    intNbLinkElt = new Number(arrLinkId.length);
    arrClassLink = new Array('current', 'ghost');
    strContent = new String()
    for (i = 0; i < intNbLinkElt; i++) {
        strContent = "block" + arrLinkId[i];
        if (arrLinkId[i] == eltId) {
            document.getElementById(arrLinkId[i]).className = arrClassLink[0];
            document.getElementById(strContent).style.display = 'block';
        } else {
            document.getElementById(arrLinkId[i]).className = arrClassLink[1];
            document.getElementById(strContent).style.display = 'none';
        }
    }
}


function UpdateSelection(bAdd, Type, Code, idPostIt, labelNbVoyages) {
    var oPostIt = $(idPostIt + '_imgPostit');
    var act = '';
    if (bAdd) {
        act = 'add';
        if (oPostIt) oPostIt.style.display = 'inline';
        labelNbVoyages.innerHTML = parseInt(labelNbVoyages.innerHTML) + 1
    } else {
        act = 'del';
        if (oPostIt) oPostIt.style.display = 'none';
        labelNbVoyages.innerHTML = parseInt(labelNbVoyages.innerHTML) - 1;
        if (parseInt(labelNbVoyages.innerHTML) == 0)
            labelNbVoyages.innerHTML = 0;
    }
    var params = 'type=' + Type + '&code=' + Code + '&act=' + act;
    new Ajax.Request('/ajax/update-selection.aspx?' + params,
      {
          method: 'get',
          onSuccess: function(transport) {
              var response = transport.responseText || "Sélection mise à jour";
              alert(response);
          },
          onFailure: function() { alert('Une erreur est survenue pendant la mise à jour...') }
      });
}



function ChangeSelection(bAdd, Type, Code, idPostIt, labelNbVoyages) {

    idPostIt = idPostIt + '_imgPostit';
    labelNbVoyages = document.getElementById(labelNbVoyages);
    //var oPostIt=$(idPostIt);
    var ContenuCookie = LireCookie('userInfo');
    ContenuCookie = ContenuCookie.split('&');
    var sPluriel = "";
    //ajout de virgule au début et à la fin
    var ListePackage = ',' + ContenuCookie[0].split('=')[1] + ',';
    var ListeCircuit = ',' + ContenuCookie[1].split('=')[1] + ',';
    var sMsg = '';
    //expression de recherche du code type: ,123,
    var regex = new RegExp(',' + Code + ',');

    if (bAdd) {
        //  if(oPostIt) oPostIt.style.display='inline';
        if (Type == 'F' && !regex.test(ListePackage))
            ListePackage += Code + ',';
        else if (!regex.test(ListeCircuit))
            ListeCircuit += Code + ',';
        sMsg = 'Le voyage a bien été ajouté à votre sélection';
        if (labelNbVoyages) {
            //if(parseInt(labelNbVoyages.innerHTML)+1 > 1) sPluriel="s";
            //labelNbVoyages.innerHTML = parseInt(labelNbVoyages.innerHTML)+1 + " voyage" + sPluriel
            labelNbVoyages.innerHTML = parseInt(labelNbVoyages.innerHTML) + 1;
        }
    } else {
        //if(oPostIt) oPostIt.style.display='none';
        if (Type == 'F')
            ListePackage = ListePackage.replace(',' + Code + ',', ',');
        else if (!regex.test(ListeCircuit))
            ListeCircuit = ListeCircuit.replace(',' + Code + ',', ',');
        sMsg = 'Le voyage a bien été retiré de votre sélection';
        if (labelNbVoyages) {
            //if(parseInt(labelNbVoyages.innerHTML)-1 > 1) sPluriel="s";
            //labelNbVoyages.innerHTML = parseInt(labelNbVoyages.innerHTML)-1 + " voyage" + sPluriel;
            labelNbVoyages.innerHTML = parseInt(labelNbVoyages.innerHTML) - 1;
            if (parseInt(labelNbVoyages.innerHTML) < 0)
                labelNbVoyages.innerHTML = 0;
        }
    }
    //suppression des virgules de début et de fin
    ListePackage = ListePackage.replace(',,', ',');
    ListeCircuit = ListeCircuit.replace(',,', ',');
    if (ListePackage == ',,' || ListePackage == ',') {
        ListePackage = '';
    } else {
        ListePackage = ListePackage.substring(1, ListePackage.length - 1) //virgule de début et de fin
    }
    if (ListeCircuit == ',,' || ListeCircuit == ',') {
        ListeCircuit = '';
    } else {
        ListeCircuit = ListeCircuit.substring(1, ListeCircuit.length - 1);
    }


    date = new Date;
    date.setDate(date.getDate() + 30);
    EcrireCookie('userInfo', 'selectionPackage=' + ListePackage + '&selectionCircuit=' + ListeCircuit, date);
    alert(sMsg);
}

function UpdateAddDeleteLink(addID, removeID) {
    add = document.getElementById(addID);
    remove = document.getElementById(removeID);
    if (add && remove) {
        if (remove.style.display == 'none') {
            remove.style.display = 'inline'
            add.style.display = 'none'
        } else {
            remove.style.display = 'none'
            add.style.display = 'inline'
        }
    }


}

function VideSelection() {
    if (confirm('Etes-vous sûr de vouloir vider votre sélection ?')) {
        //EffaceCookie('userInfo');
        date = new Date;
        date.setDate(date.getDate() + 30);
        EcrireCookie('userInfo', 'selectionPackage=&selectionCircuit=', date, '/');
    }
}

function EcrireCookie(nom, valeur) {
    var argv = EcrireCookie.arguments;
    var argc = EcrireCookie.arguments.length;

    var expires = (argc > 2) ? argv[2] : null;
    //var path=(argc > 3) ? argv[3] : null;
    var path = "/";
    var domain = (argc > 4) ? argv[4] : null;
    var secure = (argc > 5) ? argv[5] : false;
    //alert(nom+"="+valeur+
    //((expires==null) ? "" : ("; expires="+expires.toGMTString()))+
    //((path==null) ? "" : ("; path="+path))+
    //((domain==null) ? "" : ("; domain="+domain))+
    //((secure==true) ? "; secure" : ""));
    //document.cookie=nom+"="+escape(valeur)+
    document.cookie = nom + "=" + valeur +
    ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
    ((path == null) ? "" : ("; path=" + path)) +
    ((domain == null) ? "" : ("; domain=" + domain)) +
    ((secure == true) ? "; secure" : "");
    //alert(document.cookie);
}

function LireCookie(nom) {
    var arg = nom + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) {
        var j = i + alen;
        if (document.cookie.substring(i, j) == arg) return getCookieVal(j);
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) break;

    }
    return null;
}

function getCookieVal(offset) {
    var endstr = document.cookie.indexOf(";", offset);
    if (endstr == -1) endstr = document.cookie.length;
    return unescape(document.cookie.substring(offset, endstr));
}

function EffaceCookie(nom) {
    date = new Date;
    date.setFullYear(date.getFullYear() - 1);
    EcrireCookie(nom, null, date);
}

/* test si le navigateur accepte les cookies
retourne true si c'est le cas, false sinon
*/
function isCookieEnable() {
    EcrireCookie("cookiesAreEnable", "yes");
    //alert(LireCookie("cookiesAreEnable"));

    if (LireCookie("cookiesAreEnable") == "yes") {
        // on efface le cookie de test
        EffaceCookie("cookiesAreEnable");
        return true;
    }
    return false;
}

function LoadNosEngagements(sFrom, sTo, sLink) {
    var sClass = "actif"
    listLi = new Array("liEthique", "liSecurite", "liTransparence", "liEnvironnement", "liUnitaid")
    if (document.getElementById) {
        if (document.getElementById(sFrom) && document.getElementById(sTo)) {
            document.getElementById(sTo).innerHTML = document.getElementById(sFrom).innerHTML;
        }
        for (i = 0; i < listLi.length; i++) {
            document.getElementById(listLi[i]).className = "";
        }
        if (document.getElementById(sLink)) {
            document.getElementById(sLink).className = sClass;
        }
    }
}

function LoadSelectDescriptif(sCodePays, sCodeTheme, dvID) {
    var params = 'codePays=' + sCodePays + '&codeTheme=' + sCodeTheme;

    new Ajax.Request('/ajax/select_descriptif.aspx?' + params,
      {
          method: 'get',
          onSuccess: function(transport) {
              var response = transport.responseText;
              if (response.indexOf('NOT FOUND') < 0 && $(dvID)) {
                  // $(dvID).innerText=response;
                  mainDV = document.getElementById(dvID);
                  dv = document.createElement("DIV");
                  dv.innerHTML = response;
                  dv.style.width = "70%";
                  dv.style.height = "100%";
                  mainDV.replaceChild(dv, mainDV.firstChild);
                  ShowAtPosition(dvID, -180, -160);

              }
          }
      });
}

var _global_Hotel_imgToUpdate = '';
var _global_MainDIV = '';
function LoadHotel(sCodeTiers, imgToUpdate, mainDIV, iIndex) {
    //alert(1);
    var params = "code=" + sCodeTiers + "&index=" + iIndex
    var global_Hotel_imgToUpdate = imgToUpdate;
    var global_MainDIV = document.getElementById(mainDIV);
    //alert(2);
    new Ajax.Request('/voyages/hotels/ficheHotelCompacte.aspx?' + params,
      {
          method: 'get',
          async: false,
          onSuccess: function(transport) {
              //alert(3);
              var response = transport.responseText;
              // $(dvID).innerText=response;
              dv = document.createElement("DIV");
              dv.innerHTML = response;
              var content = "";
              for (var i = 0; i < dv.getElementsByTagName("DIV").length; i++) {
                  if (dv.getElementsByTagName("DIV")[i].id == 'LiveArea') {
                      content = dv.getElementsByTagName("DIV")[i].innerHTML;
                      break;
                  }
              }
              var dvFinal = document.createElement("DIV");
              dv.innerHTML = content;

              global_MainDIV.replaceChild(dv, global_MainDIV.firstChild);
              if (global_MainDIV.style.display == "none") {
                  global_MainDIV.style.display = "block";
                  /*document.getElementById(global_Hotel_imgToUpdate).src = "/img/picto_explorerMoins.gif"*/
                  /* Ajout DFaggianelli modif integration et interaction */
                  document.getElementById(mainDIV + "_block").style.backgroundColor = '#ede6e0';
                  document.getElementById(mainDIV + "_open").style.display = 'none';
                  document.getElementById(mainDIV + "_close").style.display = 'block';
              } else {
                  global_MainDIV.style.display = "none"
                  /*document.getElementById(global_Hotel_imgToUpdate).src = "/img/picto_explorerPlus.gif"*/
                  /* Ajout DFaggianelli modif integration et interaction */
                  document.getElementById(mainDIV + "_block").style.backgroundColor = '#FFF';
                  document.getElementById(mainDIV + "_open").style.display = 'block';
                  document.getElementById(mainDIV + "_close").style.display = 'none';
              }
          }
      });

}
function ShowAtPosition(idElt, gapX, gapY) {
    document.getElementById(idElt).style.display = 'block';
    document.getElementById(idElt).style.top = tempY + gapY + 'px';
    document.getElementById(idElt).style.left = tempX + gapX + 'px';
}

function ShowHotelDetails(codeTiers, imgToUpdate, mainDIV, iIndex) {

    if (document.getElementById(mainDIV)) {
        LoadHotel(codeTiers, imgToUpdate, mainDIV, iIndex);

    }
}

function ShowHotelsOpen(codes) {
    var tab = codes.toString().split(",");
    for (i = 0; i <= tab.length - 1; i++) {

        ShowHotelDetails(tab[i], "picto" + tab[i], "dvDetailHotel" + tab[i], tab[i]);
    }
}

var oCurItem = null;
var oCurPicto = null;

function showHideDvPicto(dvBloc, idPicto) {
    var oo;
    var oop;

    if (document.getElementById(dvBloc) && document.getElementById(idPicto)) {
        var etat = { "none": "block", "block": "none" };
        document.getElementById(dvBloc).style.display = etat[document.getElementById(dvBloc).style.display];
        document.getElementById(idPicto).src = (document.getElementById(idPicto).src == "/img/bouton_extand_page.gif") ? "/img/bouton_pro_page.gif" : "/img/bouton_extand_page.gif"

        if (oCurItem !== null) {
            oo = oCurItem
            oop = (oCurPicto !== null) ? oCurPicto : document.getElementById(idPicto);
            if (oo.style.display == "none") { oop.src = "/img/bouton_extand_page.gif" } else { oop.src = "/img/bouton_pro_page.gif" }
            oo.style.display = etat[document.getElementById(dvBloc).style.display];
        }
        oCurItem = document.getElementById(dvBloc);
        oCurPicto = document.getElementById(idPicto);
    }
}




/* Mega drop down menu avec delay settimeout en mouseover et mouseout javascript david faggianelli pour Comptoir des voyages */
var tabTags = new Array('_0', '_1', '_2', '_3');
var timeOutId;

function entree(cetElement) {
    clearTimeout(timeOutId);
    timeOutId = window.setTimeout(function() { permuteur(cetElement, 'on') }, 200);
}

function sortie(cetElement) {
    clearTimeout(timeOutId);
    timeOutId = window.setTimeout(function() { permuteur(cetElement, 'off') }, 300);
}

function permuteur(cetElement, etat) {
    if (etat == 'on') {
        for (i = 0; i <= tabTags.length - 1; i++) {
            if (tabTags[i] != cetElement) {
                if (document.getElementById('panel' + tabTags[i]) != null && document.getElementById('panel' + tabTags[i]).style.display != 'none') {
                    document.getElementById('panel' + tabTags[i]).style.display = 'none';
                    if (document.getElementById(tabTags[i - 1]) != null) { document.getElementById(tabTags[i - 1]).style.borderRightColor = '#737373'; }
                    if (document.getElementById(tabTags[i + 1]) != null) { document.getElementById(tabTags[i + 1]).style.borderRightColor = '#737373'; }
                    if (document.getElementById('trucage' + tabTags[i]) != null) { document.getElementById('trucage' + tabTags[i]).style.display = 'none'; }
                }
            } else {
                if (document.getElementById(tabTags[i - 2]) != null) { document.getElementById(tabTags[i - 2]).style.borderRightColor = '#FFF'; }
                if (document.getElementById(tabTags[i - 1]) != null) { document.getElementById(tabTags[i - 1]).style.borderRightColor = '#737373'; }
                if (document.getElementById(tabTags[i + 1]) != null) { document.getElementById(tabTags[i + 1]).style.borderRightColor = '#FFF'; }
            }
            if (document.getElementById('rollDown' + tabTags[i]) != null) { document.getElementById('rollDown' + tabTags[i]).src = '/img/btnDownOff.gif'; }
        }
        document.getElementById('panel' + cetElement).style.display = 'block';
        if (document.getElementById('trucage' + cetElement) != null) { document.getElementById('trucage' + cetElement).style.display = 'block'; }
        if (document.getElementById('rollDown' + cetElement) != null) { document.getElementById('rollDown' + cetElement).src = '/img/btnDownOn.gif'; }
    } else if (etat == 'off') {
        for (i = 0; i <= tabTags.length - 1; i++) {
            if (document.getElementById('panel' + tabTags[i]) != null) { document.getElementById('panel' + tabTags[i]).style.display = 'none'; }
            if (document.getElementById(tabTags[i]) != null) { document.getElementById(tabTags[i]).style.borderRightColor = '#737373'; }
            if (document.getElementById('trucage' + tabTags[i]) != null) { document.getElementById('trucage' + tabTags[i]).style.display = 'none'; }
        }
        if (document.getElementById('rollDown' + cetElement) != null) { document.getElementById('rollDown' + cetElement).src = '/img/btnDownOff.gif'; }
    }
}

function rajouterExtension(titre, code) {

   // alert("ext" + code);
    if (document.getElementById("ext" + code).innerHTML == "Sélectionner") {
        document.getElementById("ext" + code).innerHTML = "DéSélectionner";
    } else {
        document.getElementById("ext" + code).innerHTML = "Sélectionner";
    }
}




