/*##############################################################################################
################### JS DES FONCTIONS DE GESTION DE LA CONNEXION AU MAGASIN ###################### 
/*############################################################################################## */

var idRegionEm=''
var idMagasinEm='';
var valueRegionEm='';
var valueMagEm='';
var idCatMagEm='';
var fromEmailingMagOnline = '';
var oMagOnline = '';
var urlStoreHpConnecte = "/nettools/store/" + _siteNumber + "/#language#/maghp/";
var cookieRefuse = '';

 /*############################################################################################## */
 /* Appellee a chaque changement de region (ou departement)  */ 
 function changeStoreList(nameForm,nameList,nameHideList,idRegion) {
    // Vide la listbox des magasins 
    cleanList(nameForm,nameList);    
     // Vide la listbox cachee des url magasins 
    cleanList(nameForm,nameHideList); 
    // Remplit la liste des magasins de la region (ou departement) 
    searchStoreList(nameForm,nameList,nameHideList,idRegion);
}
 /*############################################################################################## */
/* Recupere les magasins de la region ou le departement selectionne qui remplit les conditions suivantes : 
champ titre de la region ou du departement rempli et 
la region ou du departement contient au moins 1 magasin autorise (flag online) et 
qui a son champ nom rempli sur sa fiche magasin */
function searchStoreList(nameForm,nameList,nameHideList, idRegion) {      
        // Premieres lignes des listes
        addOptionToList(nameForm,nameList,firstLineList,'');
        addOptionToList(nameForm,nameHideList,'','');
        // Parcourt des magasins publies itool
       for (i = 0; i < lPublishedThird.length; i++) {
               // Si le magasin fait partie de la region selectionnee dans la liste
	if(lPublishedThird[i].parentIdCat == idRegion) {
	        // Si le magasin est autorise dans la popup
                       if (lPublishedThird[i].online) {
                                // Ajoute une ligne a la listbox des magasins avec comme texte le nom du magasin et comme valeur le numero du magasin
                                addOptionToList(nameForm,nameList, lPublishedThird[i].name, lPublishedThird[i].number);
                                // Ajoute une ligne a la listbox cachee des idCategory des magasins
                                addOptionToList(nameForm,nameHideList, lPublishedThird[i].idCat, lPublishedThird[i].number);    
                        }
               }
        }                                                                 
}               
/*############################################################################################## */
/* Appellee dans la page de connexion au magasin pour pre-remplir 
les champs du formulaire de connexion avec les valeurs du cookie */
function showOldStoreIfCookie() {    
     // Recuperation du cookie
    var cookieMagasin = getCookie('decathlon');
     if (cookieMagasin!=null) {    
             // Recuperation des valeurs du cookie
             prenomCookie = getEltFromUrl(cookieMagasin, 'prenom');
             nomCookie = getEltFromUrl(cookieMagasin, 'nom');
             idRegion = getEltFromUrl(cookieMagasin, 'idRegion');
             idMagasin = getEltFromUrl(cookieMagasin, 'idMagasin');
            // Remplissage des champs de l iframe de connexion magasin
            if (prenomCookie!='' || nomCookie!='') {
                checkOrUncheck('checkb',true);
                setBlocByValue('formConnexion','firstNameCustomer',prenomCookie);
                setBlocByValue('formConnexion','nameCustomer',nomCookie);                
                gestion_checkbox();                
            }
            // Preselection de la region (ou du departement) et du maagsin
            selectRegionAndStore(idRegion, idMagasin);
     }        
}

/*############################################################################################## */
/* Appellee lorsqu on actionne la pop up de connexion magasin
permet de preselectionner la region (ou departement) et le magasin passe en parametre
*/
function selectRegionAndStore(idRegion, idMagasin){
    // Selectionne la region grace a l id de la region passe en parametre
    var optionCounter;
    for (optionCounter = 0; optionCounter < document.formConnexion.listeDeptRegion.length; optionCounter++) {           
        if(document.formConnexion.listeDeptRegion[optionCounter].value==idRegion){    
            document.formConnexion.listeDeptRegion.selectedIndex=optionCounter;
        }
    }            
    // Remplit la liste des magasins en fonction de l id de la region passe en parametre        
    changeStoreList('formConnexion','listeMagasins','listeIdCatMagasins',idRegion);        
    // Selectionne le magasin et l url grace a l id du magasin passe en parametre
    for (optionCounter = 0; optionCounter < document.formConnexion.listeMagasins.length; optionCounter++) {
        if(document.formConnexion.listeMagasins[optionCounter].value==idMagasin){
            document.formConnexion.listeMagasins.selectedIndex=optionCounter;
            document.formConnexion.listeIdCatMagasins.selectedIndex=optionCounter;
        } 
    }              
}
/*############################################################################################## */
/* Appellee lors d un changement ou d une deconnexion de magasin */
function checkBasket(functionToCall,fromEmailing){
    if (getCookie('basket')!=null) {
        var cookieMagasin = getCookie('decathlon');
        if (!cookieMagasin) {
          deleteCookie('basket');
          functionToCall();
          return false;
        }
        // ajout du nom du magasin dans le message de la popup
        var txtPertePanier = window.parent.getBlocHtml('txtPertePanier');
        txtPertePanier = txtPertePanier.replace(/#store_name/g, getEltFromUrl(cookieMagasin, 'magasin').toUpperCase());
        window.parent.setBlocByHtml('txtPertePanier',txtPertePanier);
        // configuration du bouton qui permet le changement ou la deconnexion de magasin
        window.parent.document.getElementById('confirmerPertePanier').onclick = function(){deleteCookie('basket');functionToCall();hide_all('popup-pertePanier');return false};
        // configuration du bouton qui permet d'annuler le changement via emailing : rechargement de la page afin d effacer les parametres de l url
        if(typeof fromEmailing != 'undefined' && fromEmailing){
            var action = function(){var adr = window.parent.location.href;window.parent.location.href=adr.substring(0, adr.indexOf('?'));return false;};
            window.parent.document.getElementById('annulerPertePanier').onclick = action;
            window.parent.document.getElementById('closePertePanier').onclick = action;
       }
        window.parent.hide_all('filter_frame');
        show_filter('filter');
        show_popup('popup-pertePanier');
    }
    else
        functionToCall();
}

/*############################################################################################## */
/* Appellee a la validation du formulaire de connexion au magasin */
function validate(libCookieRefuse,_magOnline) {
    var sStoreId;
    cookieRefuse = libCookieRefuse;

    if (document && document.formConnexion && document.formConnexion.listeMagasins[document.formConnexion.listeMagasins.selectedIndex].value!='' || valueMagEm!='') {
        // Recup ID magasin cilbe
        if (valueMagEm !='') sStoreId = idMagasinEm;
        else sStoreId = document.formConnexion.listeMagasins[document.formConnexion.listeMagasins.selectedIndex].value;
    }
    else if (typeof _magOnline != 'undefined') {
        oMagOnline = _magOnline;
        sStoreId = oMagOnline.number;
    }

    if (sStoreId != '') getCentralIdAssociatedToStoreId(sStoreId, POST_LOAD_STORECNX_VALIDATE); 
}

/*############################################################################################## */
// Fonction de post traitement associee a la validation du formaulaire
var POST_LOAD_STORECNX_VALIDATE = function postStoreCnxValidate(httpStatus, _joService) {
    var sCtlNumber = _centralNumber;
    
    if(httpStatus != null && httpStatus==200) {     
        // Recuperation de la centrale associee au magasin cherche
        var oContent = _joService.getContent();

        if(oContent != null){
            var aCtls = oContent.getThirds().getThirdsByKind(THIRD_KIND_CENTRAL);

            if (aCtls.length > 0) {
                var oCentrale =  aCtls[aCtls[0]];
                sCtlNumber = oCentrale.getNumber();
            }
        }

        var nomCookie='';
        var prenomCookie='';
        var idMag,nomMag,idRegion,nomRegion,urlMag,idCatMag;
        
        var cookieMagasin = getCookie('decathlon');
        // Date du cookie
        date=new Date;
        date.setFullYear(date.getFullYear()+10);  
        // Nom et prenom du client
        if (cookieMagasin!=null) {
            // Recuperation des valeurs du cookie
            prenomCookie = getEltFromUrl(cookieMagasin, 'prenom');
            nomCookie = getEltFromUrl(cookieMagasin, 'nom');
        }
        
        // Depuis la page magasin
        if (valueMagEm!='') {
            idMag = idMagasinEm;
            nomMag = valueMagEm;
            idCatMag = idCatMagEm;
            idRegion = idRegionEm;
            nomRegion = valueRegionEm;
        }
        // Depuis le parametre emailing
        else if (oMagOnline != ''){
            idMag = oMagOnline.number;
            nomMag = oMagOnline.name;
            idCatMag = oMagOnline.idCat;
            idRegion = oMagOnline.parentIdCat;
            nomRegion = oMagOnline.parentTitle;
        }
        // Depuis le formulaire de connexion
        else if (document && document.formConnexion && document.formConnexion.listeMagasins[document.formConnexion.listeMagasins.selectedIndex].value!=''){
            // Nom et prenom du client
            if (document.formConnexion.checkb.checked) {
                nomCookie = document.formConnexion.nameCustomer.value;
                prenomCookie = document.formConnexion.firstNameCustomer.value;
            }
            else {
                nomCookie = '';
                prenomCookie = '';
            }
            idMag = document.formConnexion.listeMagasins[document.formConnexion.listeMagasins.selectedIndex].value;
            nomMag = document.formConnexion.listeMagasins[document.formConnexion.listeMagasins.selectedIndex].text;
            idCatMag = document.formConnexion.listeIdCatMagasins[document.formConnexion.listeIdCatMagasins.selectedIndex].text;
            idRegion = document.formConnexion.listeDeptRegion[document.formConnexion.listeDeptRegion.selectedIndex].value;
            nomRegion = document.formConnexion.listeDeptRegion[document.formConnexion.listeDeptRegion.selectedIndex].text;
        }
        
        if(idMag) {
            var valeurCookie = 'nom=' + nomCookie;
            valeurCookie += '&amp;prenom=' + prenomCookie;
            valeurCookie += '&amp;idMagasin=' + idMag;
            valeurCookie +='&amp;magasin=' + nomMag;
            valeurCookie += '&amp;idRegion=' + idRegion;
            valeurCookie += '&amp;region=' + nomRegion;
            valeurCookie += '&amp;urlMag='+ urlStoreHpConnecte + idCatMag;
            valeurCookie += '&amp;version=V7';
            valeurCookie += '&amp;idCentrale=' + sCtlNumber;
            
            // Depot du cookie
            setCookie('decathlon', valeurCookie,date,'/');
            // On verifie que le cookie a bien ete ecrit sinon c est que le navigateur n accepte pas les cookies    
            if (getCookie('decathlon') == null && cookieRefuse){alert(cookieRefuse);return false;}
    
            // Fermeture de l'iframe 
            window.parent.hide_all('filter_frame');
            if (valueMagEm !='')
                window.parent.location.href = rootPath;
            else {
                // Si on vient de la page panier, on redirige vers la HP
                if (window.location.search=='?from=eBooking')
                    window.parent.location.href = '/'+_language+'/';
                else { // on recharge la page en enlevant des parametres eventuels
                    var adr = window.parent.location.href;
                    var adrParams = window.parent.location.search;

                    // Si param target renseigne, on redirige vers cette url 
                    if (adrParams.indexOf("target=") != -1) {
                        var reg=new RegExp("target=.*","g");
                        var myTmp = adrParams.match(reg);
                        if (myTmp != null) {
                            adr = myTmp.toString().substr(7);
                            adrParams = null;
                        }
                    }

                    // Suppression du # a la fin de l url
                    if(adr.indexOf('#') != -1)
                        adr = adr.substring(0, adr.indexOf('#'));
    
                    if(adrParams) {
                        adrParams = adrParams.substr(1);
                        adr = adr.substring(0,adr.indexOf('?'));
                        // Si on vient de l emailing, suppression du parametre emailing
                        if(adrParams.indexOf('emailing=') != -1) {
                            if(adrParams.indexOf('&') != -1) {
                                var avantEmailing = adrParams.substring(0,adrParams.indexOf('emailing='));
                                if(avantEmailing.length > 0)  avantEmailing = avantEmailing.substring(0,avantEmailing.indexOf('&'));
                                var apresEmailing = adrParams.substr(adrParams.indexOf('emailing='));
                                if(apresEmailing.indexOf('&') != -1) apresEmailing = apresEmailing.substr(apresEmailing.indexOf('&') + 1);
                                else apresEmailing = '';
                                adrParams = avantEmailing + apresEmailing;
                            }
                            else adrParams = '';
                        }
                        // Si on est sur le mdr on modifie/ajoute l id magasin dans l url
                        else if(adr.indexOf("nettools/allsearch.search") != -1 || adr.indexOf("nettools/advsearch.search") != -1) {
                            if(adrParams.indexOf("&store=") != -1){
                                adrParams = adrParams.substring(0,adrParams.indexOf("&store=")+7) + idMag;
                                var fin = adr.substr(adr.indexOf("&store=") + 1);
                                if(fin.indexOf('&') != -1) adrParams += fin.substr(fin.indexOf("&"));
                            }
                            else adrParams += "&store=" + idMag;
                        }
                        else if(adrParams.indexOf('articleValue') != -1 ||  adrParams.indexOf('openItem') != -1) adrParams = '';
                    }

                    // Ajout des parametres si il en reste
                    if(adrParams) adr +=  '?' + adrParams;
                    window.parent.location.href = adr;
                }

            }
        }
    }
}

/*############################################################################################## */
/* Appellee dans le header pour retourner le cookie si la connexion est valide : cookie et switch LOCAL_STOCK*/
function isConnexionEnable() {
    // Recuperation du cookie
    var cookieMagasin = getCookie('decathlon');     
     if (cookieMagasin!=null && getSwitchSite('LOCAL_STOCK')) {      
         return(cookieMagasin);
     }
     else {
         return null;
     }
}
/*############################################################################################## */
/* Appellee a la fin du header pour afficher les blocs adequats 
en fonction de la presence du cookie magasin et des interrupteurs */
function showBlocIfCookieHeader(cookieMagasin) {
    // Largeur du bloc top-connect ou top-noconnect
    var largeurBlocGauche = 0;
    // Bloc contenant l agent virtuel
    var divJulie = document.getElementById("julie");

    // Recuperation source image stats
    var statsHP = getImageSrc('statsHP');       
    var racineStat = statsHP.substring(0,statsHP.lastIndexOf("/")+1);
   
     if (cookieMagasin!=null) {
             
             // Recuperation des valeurs du cookie
            magasin=getEltFromUrl(cookieMagasin, "magasin");
            prenom=getEltFromUrl(cookieMagasin, "prenom");
            nom=getEltFromUrl(cookieMagasin, "nom");
            idMagasin = getEltFromUrl(cookieMagasin, 'idMagasin');
            idRegion = getEltFromUrl(cookieMagasin, 'idRegion');
            version = getEltFromUrl(cookieMagasin, 'version');

             // Test de la version du cookie
            if (version!='V6' && version!='V7') {
              disconnectStore();
            }
            else if (version == 'V6') {
              date = new Date;
              date.setFullYear(date.getFullYear()+10);  
              redoCookie('decathlon', cookieMagasin, date, '/');
              if (getCookie('basket')) {
                redoCookie('basket', getCookie('basket'), date, '/');
              }
            }
           
            // Test si le magasin du cookie est toujours autorise            
            if(!getSwitchMagasin('FLAG_ONLINE')) {                           
                disconnectStore();
            }
                        
            // Remplissage des blocs du header
            setBlocByHtml('nomMagasin',magasin);
                          
            // Image pour les stats connecte          
           setSrc('statsHP',racineStat + idMagasin + '.stats');

            // Affichage du lien de presentation de e-resa + panier dans le header
            if (getSwitchSite('BOOKING')){
                if(getSwitchMagasin('FLAG_BOOKABLE')){
                    showBloc('booking');
                    displayBasketRemind();
            	 }
            }
                      
            // Affichage du header connecte
            showBloc('top-connect');
            
            var nomMag = document.getElementById("nomMagasin");
            var widthMax = 246;
            if(divJulie) {
                nomMag.style.fontSize = "19px";
                widthMax = 206;
            }
            
            // Nom du magasin sur deux lignes s il est trop long
            if(nomMag.offsetWidth > widthMax) {
                nomMag.parentNode.className += " lignes2";
                if(divJulie) {
                    nomMag.parentNode.style.width = "180px";
                    nomMag.style.fontSize = "17px";
                }
                // Si le nom du magasin est affiche sur une seule ligne apres la reduction de la taille de police, on ajoute un margin-top
                if(nomMag.offsetHeight < 30) nomMag.style.margin = '11px 0 0';
            }
            
            largeurBlocGauche = document.getElementById("top-connect").offsetWidth;
     }
     else {
       if (_siteNumber == '10696451') document.getElementById('lien-logo').href = 'http://portal.decathlon.be/' + _language;
             // Affichage du lien de presentation de e-resa + panier dans le header
             if (getSwitchSite('BOOKING') && getSwitchSite('LOCAL_STOCK')) {
                 document.getElementById('nbArticles').appendChild(document.createTextNode('0 '));
                 // Specifique RO : si 0 article alors il faut mettre le mot article au pluriel
                 if(_siteNumber == '146621755') showBloc('lib-articles','inline');
                 else showBloc('lib-article','inline');
                 
                 showBloc('booking');
             }
            // Il existe une rubrique booking mais le switch est desactive. On recentre la div contenant les infos mag pour combler le vide a la place du panier
            else if(document.getElementById("booking")) document.getElementById("top-noconnect").className += " zoneMagNotBooking";

            // Image pour les stats non connecte          
            setSrc('statsHP',racineStat + 'home.stats');
            
            // Affichage du header non connecte
            if (getSwitchSite('LOCAL_STOCK')) {
                showBloc('top-noconnect');
                largeurBlocGauche = document.getElementById("top-noconnect").offsetWidth + 12;
            }
     }
     
     // Affichage du bloc agent virtuel
     if(divJulie)  {
         var script = parent.document.createElement('script');
         script.type = 'text/javascript';
         script.src = urlJulie;
         document.getElementsByTagName("head")[0].appendChild(script);     
         var largeurJulie = 980 - (document.getElementById("conteneurLogo").offsetWidth + 6 + largeurBlocGauche);

         var blocBooking = document.getElementById("booking");
         var blocNotBooking = document.getElementById("notBooking");
         
         divJulie.style.display = "block";
         
         if (blocBooking && blocBooking.style.display == "block" || blocNotBooking) {
             if (blocNotBooking) largeurJulie -= blocNotBooking.offsetWidth + 10;
             if (blocBooking) largeurJulie -= blocBooking.offsetWidth;
             
             if (document.getElementById("affichlienlangue")) largeurJulie -= 40;
    
             divJulie.style.width = largeurJulie + "px";
             divJulie.style.marginRight = 0;
             divJulie.firstChild.style.width = divJulie.firstChild.offsetWidth - 20 + "px";
             divJulie.firstChild.style.cssFloat  = "none";
             divJulie.firstChild.style.styleFloat  = "none";
         }
     }
}
/*########################################################################
/* Appellee a la fin de la Homepage  pour afficher les blocs adequats 
en fonction de la presence du cookie magasin */
function showBlocIfCookieHome(cookieMagasin, rootPath) {
    var idMagCookie = '';
    
    if (getSwitchSite('BOOKING') && (getSwitchMagasin('FLAG_BOOKABLE') || !cookieMagasin)) showBloc('bloc-hp-bas-eresa');
    
    var dateVeille = getDateVeilleEnFonctionDuFormat(formatDate);
    setBlocByHtml("date",dateInfoLegale+" "+dateVeille+".");
    
    // Animation affichee en haut a droite
    if(imgAnimHpRight) {
        soaccueil.addVariable("boutiqueImage",imgAnimHpRight);
        soaccueil.addVariable("boutiqueLien",encodeURIComponent(lienAnimHpRight));
    }
    
    if (cookieMagasin != null) {
        // Recuperation des valeurs du cookie
        var idMagCookie = getEltFromUrl(cookieMagasin, 'idMagasin');
        var urlMag = getEltFromUrl(cookieMagasin, 'urlMag');

        // Affectation source iframe magasin et affichage zone animation basse Homepage connectee
        var iframeMag = createElement_iframe('zoneMagasinHP',urlMag,'','100%','522px','',document.getElementById('zoneMag'));
        showBloc('zoneMag');
        showBloc('titre-anim-flash-connecte');
        
        // Si une animation a ete ajouter dans right-animation, elle est affiche a cote du bloc infos magasin donc on la cache dans l animation en dessous de l iframe magasin
        if(imgAnimHpRight) soaccueil.setAttribute("width",546);
    }
    // Affichage zone animation Homepage non connecte
    else showBloc('animationHPDeconnecte');
    
    soaccueil.write("flash-accueil");
    changeMagasin(idMagCookie);
}
 /*############################################################################################## */
 // Changement de magasin ou affichage de la popup connexion magasin
 function changeMagasin (idMagCookie){
    // Si param emailing dans url et cookieMagasin == null : ouverture popup connexion magasin
    if (!cookieMagasin && window.location.search=='?emailing') {
        show_filter('filter');
        show_popup('filter_frame');
    }
    
     // Emailing client : numero de magasin en parametre dans l url
     if (window.location.search.indexOf('emailing=')!=-1) {
         var paramEmailing = window.location.search;
         paramEmailing = paramEmailing.substr(paramEmailing.indexOf('emailing=') + 9);
         var numMagParam = paramEmailing.substring(0,paramEmailing.indexOf('&') != -1 ? paramEmailing.indexOf('&') : paramEmailing.length);
         // On force la connexion au magasin dont le numero est passe en param dans l url seulement si celui ci n est pas deja celui du cookie (s il existe)
         if (numMagParam!=idMagCookie) {
             show_filter('filter');
             show_popup('filter_frame',false); // pas besoin d'afficher la popup donc on ajoute le parametre false
         }
         else {
            // Reload de la page sans le parametre emailing mais en laissant les autres parametres eventuels (articleValue)
            var adr = window.location.href;
            adr = adr.substring(0, adr.indexOf('?'));
            if(paramEmailing.indexOf('&') != -1)
                adr += '?' + paramEmailing.substr(paramEmailing.indexOf('&') + 1);
            window.location.href=adr;
         }
     }
 }
 /*############################################################################################## */
/* Appellee a la fin de la page Rayon  pour afficher les blocs adequats 
en fonction de la presence du cookie magasin */
function showBlocIfCookieRayon(cookieMagasin) {      
     if (cookieMagasin==null  && getSwitchSite('LOCAL_STOCK') ) {                    
            // Affichage du lien de connexion magasin
            showBloc('entrez-magasin');             
     }

    // Lien client vendeur
    if (cookieMagasin!= null) mcvLinkHandler(cookieMagasin);
 }
/*############################################################################################## */
/* Appellee au chargement de l iframe magasin sur la Homepage connectee 
pour remplir les blocs nom prenom et magasin avec les valeurs du cookie
appelle egalement la fonction permettant d affichage les evenements et 
la liste des sports et permet de savoir ou afficher l ecoute client */
function setIframeStoreBloc() { 
    var cookieMagasin = getCookie('decathlon');
    var prenom = getEltFromUrl(cookieMagasin, "prenom");
    var nom = getEltFromUrl(cookieMagasin, "nom");
    var magasin = getEltFromUrl(cookieMagasin, "magasin");
    if (nom || prenom) setBlocByHtml('nomPrenomClient',prenom + " " + nom + ",");
    setBlocByHtml('nomMagasinClient',magasin);
    
    if(parent.imgAnimHpRight) {
        soAnimHpConnecte.addVariable("boutiqueImage",parent.imgAnimHpRight);
        soAnimHpConnecte.addVariable("boutiqueLien",parent.lienAnimHpRight);
        soAnimHpConnecte.write("flashHPConnecte");
        
        changeBlocClass('infosMagasin','magasin animDroite');
        showBloc('animHPConnecte');
    }
    
    displayEventsOrSports();
}
/*############################################################################################## */
/* Appellee sur le lien quitter le magasin du header : tue le cookie magasin et le cookie panier si il existe */
function disconnectStore() {   
    deleteCookie('decathlon');
    
    // Rechargement de la page
    var adr =  window.parent.location.href;
    // Redirection vers la HP si on vient de la page panier
    if (typePage == 'eBooking') adr= '/'+_language+'/';
    
    if(adr.indexOf('#') != -1) adr = adr.substring(0, adr.indexOf('#'));
    
    // Si on est sur le mdr on supprime l id magasin dans l url
    if(adr.indexOf("nettools/allsearch.search") != -1 || adr.indexOf("nettools/advsearch.search") != -1){
        var fin = adr.substr(adr.indexOf("&store=") + 1);
        adr = adr.substring(0,adr.indexOf("&store="));
        if(fin.indexOf("&")!=-1) adr += fin.substr(fin.indexOf("&"));
    }
    else if(adr.indexOf('articleValue') != -1 ||  adr.indexOf('openItem') != -1) adr = adr.substring(0,adr.indexOf('?'));
    window.parent.location.href = adr;
}
/*############################################################################################## */
/* Appellee a la fin de la page famille pour afficher les blocs adequats (infos legales)
en fonction de la presence du cookie magasin et des interrupteurs */
function showBlocIfCookieFamille(cookieMagasin) {      
     if (cookieMagasin!=null) {           
             // Recuperation des valeurs du cookie
            magasin=getEltFromUrl(cookieMagasin, "magasin");           
      
            // Remplissage des blocs pour les infos legales
            setBlocByHtml('nomMagasinPageFamille',magasin);
            showBloc('infoLegalesMagasinPageFamille','inline');
     }
     else  {     
            showBloc('infoLegalesCentralePageFamille','inline');
     }
}

/*############################################################################################## */
/* Appellee a la fin de la page famille classic pour afficher les blocs adequats (connexion magasin)
en fonction de la presence du cookie magasin et des interrupteurs */
function showBlocIfCookieFamilleClassic(cookieMagasin) {  
     if (cookieMagasin==null && getSwitchSite('LOCAL_STOCK')) {        
             // Affichage du lien de connexion magasin
            showBloc('entrezMagasin','inline');             
     }

    // Lien client vendeur
    if (cookieMagasin!= null) mcvLinkHandler(cookieMagasin);
}
/*############################################################################################## */
/* Appellee a la fin de la page famille comparatif pour afficher les blocs adequats (connexion magasin)
en fonction de la presence du cookie magasin et des interrupteurs 
Ces blocs sont recuperes de la page famille classic */
function showBlocIfCookieFamilleComparatif() {
        if (parent.document.getElementById('infoLegalesCentralePageFamille')) {
            if (parent.document.getElementById('infoLegalesCentralePageFamille').style.display=='block') {
                setBlocByHtml('infoslegales',parent.document.getElementById('infoLegalesCentralePageFamille').innerHTML);
            }
        }
        if (parent.document.getElementById('infoLegalesMagasinPageFamille')) {
            if (parent.document.getElementById('infoLegalesMagasinPageFamille').style.display=='block') {
                setBlocByHtml('infoslegales',parent.document.getElementById('infoLegalesMagasinPageFamille').innerHTML);
            }
        }       
        if (parent.document.getElementById('date')) {
            setBlocByHtml("datelegale",parent.document.getElementById('date').innerHTML);
        }
}
/*############################################################################################## */
/* Appellee a la fin de la page modele pour afficher les blocs adequats (infos legales, logo fin de collection)
en fonction de la presence du cookie magasin et des interrupteurs */
function showBlocIfCookieModeleClassic(cookieMagasin) {
    idMagasin= '';
    var magasin= '';
    var urlMagasin = "";

    if (cookieMagasin!=null) {
        // Recuperation des valeurs du cookie
        magasin=getEltFromUrl(cookieMagasin, "magasin");
        idMagasin=getEltFromUrl(cookieMagasin, "idMagasin");
        urlMagasin=getEltFromUrl(cookieMagasin, "urlMag");
        
        // Remplissage mentions legales
        setBlocByHtml('nomMagasinPageFamille',magasin);
        
        if(casmagasin){
            // Gestion bouton consultation popup chaude
            gestionBoutonPrixTpsReel();
            document.getElementById("boutonPrixTpsreelOnclick").onclick=function() {
                    if (s.selectedIndex==0) {
                        alert(selectTaille);
                    }
                    else {
                        loadArticle(_client, _siteNumber, _centralNumber, idMagasin, s.value, _language);
                        return false;
                    }
               }

            // Gestion mentions legales
            if (s.options.length>2 ){
                setBlocByHtml("nomMagasin1PageModele",magasin);
                showBloc("infoLegalesPlsArticlesMagasin","inline");
            }
            else{
                setBlocByHtml("nomMagasin2PageModele",magasin);
                showBloc("infoLegalesUnArticleMagasin","inline");
            }
        }
            
        // Ouverture de la popup de connexion au magasin 
        else{
            // Affichage de la popup d info pour uk et ro
            if(_siteNumber == 52333 || _siteNumber == 146621755) productNotExistInStore = true;
            // Affichage du libelle A commander pour ro
            if (_siteNumber == 146621755) {
                changeBlocClass("boutonPrixTpsreelOnclick","no-action-link");
                document.getElementById("boutonPrixTpsreelOnclick").removeAttribute("href");
                buttomTexteConnectAcommander = libStock3;
            }

            // SPEC HU DEBUT : si substitution, on affiche picto a commander dans cadre photo
            if (_siteNumber == 12780013) {
                var oDiv = document.getElementById("visuelProduit");
                if (oDiv) oDiv.className = oDiv.className + " subst";
                // Deplacement des pictos
                var iNbPictos = 0;
                var oBleu = document.getElementById("zPictoBleu");
                var oBaisse = document.getElementById("zPictoBaisse");
                var oLoupe = document.getElementById("zPictoLoupe");
                
                if (oBleu) {
                    oBleu.style.margin = "60px 0 0 0";
                    
                    if (oBaisse) iNbPictos = 2;
                    else iNbPictos = 1;
                }
                else {
                    if (oBaisse) {
                        iNbPictos = 1;
                        oBaisse.style.margin = "60px 0 0 0";
                    }
                }
                
                if (iNbPictos != 0) {
                    if (iNbPictos == 1) oLoupe.style.margin = "139px 0 0 0";
                    else oLoupe.style.margin = "92px 0 0 0";
                }
            }
            // SPEC HU FIN

            setBlocByHtml('boutonPrixTpsreel',buttomTexteConnectAcommander);
            setBlocByHtml('titreBloc1',changez);
            // Pad d action au clic sur le bouton pour ro
            if(_siteNumber != 146621755) {
                document.getElementById("boutonPrixTpsreelOnclick").onclick=function() {show_filter('filter');show_popup('filter_frame');return false;}
                showBloc('Acommander');
            }
            if (cacheListeArticles ){
                setBlocByHtml("nomMagasin4PageModele",magasin);
                showBloc("infoLegalesUnArticleACommanderMagasin","inline");
                hideBloc('selectionProduit');     
            } 
            else{
                setBlocByHtml("nomMagasin3PageModele",magasin);
                showBloc("infoLegalesPlsArticlesACommanderMagasin","inline");
            }
        }
    }
     else {
        if (getSwitchSite('LOCAL_STOCK')) {
            setBlocByHtml('boutonPrixTpsreel',buttomTexteNoConnect);   
            setBlocByHtml('titreBloc1',connectez); 
            document.getElementById("boutonPrixTpsreelOnclick").onclick=function() {show_filter('filter');show_popup('filter_frame');return false; }
        }

        if (cacheListeArticles )showBloc("infoLegalesUnArticleCentrale","inline");
        else showBloc("infoLegalesPlsArticlesCentrale","inline");

     }

    // Si le modele n existe pas pour le magasin, on affiche la popup correspondante
    if (productNotExistInStore) loadPopupProductNotExist(idMagasin, urlMagasin, magasin, _modelId);
    
    // Lance si necessaire process de chgt de mag
    changeMagasin(idMagasin);
}
/*############################################################################################## */
/* Fct de gestion du bouton popup chaude */
function gestionBoutonPrixTpsReel(){
    if (casmagasin) {
        // Ouverture popup local stock AVEC eResa
        if (getSwitchSite('BOOKING') && getSwitchMagasin('FLAG_BOOKABLE')) {
            var params = window.location.search;
            var paramToSearch = 'articleValue';
            var selectValue = '';
            if(params.indexOf(paramToSearch) != -1){
                selectValue = params.substr(params.indexOf(paramToSearch) + paramToSearch.length + 1);
                if(selectValue.indexOf('#') != -1) selectValue = selectValue.substring(0,selectValue.indexOf('#'));
            }
    
            if(s.value && s.value == selectValue){
                setBlocByHtml('boutonPrixTpsreel',reserver);
            }
            else{
                // Pour ES, IT et PT style CSS differrent pour ce bouton
//                if (_siteNumber == '6288994' || _siteNumber == '4809998' || _siteNumber == '6721215') changeBlocClass('boutonPrixTpsreelOnclick','bt01Bis');
                setBlocByHtml('boutonPrixTpsreel',buttomTexteConnectResa);
            }
            reservez = reservez.replace("#store_name", magasin);
            setBlocByHtml('titreBloc1',reservez);                                
            urlDivLocalPrice=urlLocalPriceBooking;
        }
         // Ouverture de la div prix stock local SANS eresa 
        else{
            setBlocByHtml('boutonPrixTpsreel',buttomTexteConnectNoResa);
            verifiez = verifiez.replace("#store_name", magasin);
            setBlocByHtml('titreBloc1',verifiez);                    
            urlDivLocalPrice=urlLocalPriceNotBooking;
        }
    }
}
 /*############################################################################################## */
/* Appellee une fois le tiers magasin charge pour afficher les blocs adequats en fonction de la presence du cookie magasin */
/* et de l etat online du magasin */
function showBlocIfCookieMagasin(cookieMagasin, isStoreOnline, isBookable) {
     if ((cookieMagasin ==null || idMagasinEm != getEltFromUrl(cookieMagasin, 'idMagasin')) && isStoreOnline && getSwitchSite('LOCAL_STOCK')) {
            // cache  lien de connexion magasin quand nous nous trouvons sur la fiche magasin du magasin du cookie
            // ou si le magasin n est pas autorise dans la popup de connexion
            showBloc('entrez-magasin');
     }
     if (showTitleEresa && getSwitchSite('BOOKING') && isBookable) showBloc("titleEresa");
 }
/*############################################################################################## */
/* Appellee a la fin de la page mini boutique pour afficher les blocs adequats (infos legales)
en fonction de la presence du cookie magasin et des interrupteurs */
function showBlocIfCookieBoutique(cookieMagasin) {
    if (cookieMagasin!=null) { 
            // Recuperation des valeurs du cookie
            magasin=getEltFromUrl(cookieMagasin, "magasin");           
      
            // Remplissage des blocs pour les infos legales
            setBlocByHtml('nomMagasinPageBoutique',magasin);
            showBloc('infoLegalesMagasinPageBoutique');   
     }
     else showBloc('infoLegalesCentralePageBoutique');
}
/*############################################################################################## */
/*Permet de recuperer le contenu d une balise dont l id est AjaxId dans le texte AjaxTxt et donc la balise fermante est AjaxEndTag*/
/* attention : pour recuperer le contenu la balise ouvrante doit terminer pas id=AjaxId> */
function splitInfo(AjaxTxt, AjaxId, AjaxEndTag){
	if(AjaxTxt.split(AjaxId +'">')[1]){
	               var valSplitInfo = AjaxTxt.split(AjaxId +'">')[1].split(AjaxEndTag)[0];
	               return valSplitInfo;
	            }
	else return 0;
}
/*############################################################################################## */
/* Ajax recuperation ecoute client */
/*recuperation du code html de la page dont l url est magUrl*/
/*utilise la fonction splitInfo afin de recuperer le contenu de l id  storeContact*/
function loadInfoMag(magUrl) {
        var loaded = false;  
        funcMag= function (xmlHttp, httpStatus) {
            oGlobalText = xmlHttp.responseText;
            if(oGlobalText != null) {
               var contactMag = splitInfo(oGlobalText, "storeContact", "</div>");
	 if(contactMag != 0) {
	               contactMag = contactMag.replace("<br/>","");
	               setBlocByHtml('storeContact',contactMag);
	               showBloc('btnStoreContact','inline');
	  }
            }
            loaded = true;
        };
         oProcess= new IAjaxProcess(magUrl, funcMag);	
        (oProcess).run();
}
/*############################################################################################## */
/* Test si le site (cas centrale) ou le magasin est en periode de solde pour afficher la deco des soldes */
/* ou si l interrupteur DECO_SOLDES_FORCING est actif (pour les pays voulant afficher la deco mais sans avoir de prix soldes)*/
function changeClassIfSold(cookieMagasin) {
     if (cookieMagasin!=null) {           
             // Recuperation num mag du cookie            
            idMagasin=getEltFromUrl(cookieMagasin, "idMagasin");
            if ( !getSwitchSite('DECO_SOLDES_BLOCKING') && (getSwitchMagasin('FLAG_IS_SOLD_PERIOD') || getSwitchSite('DECO_SOLDES_FORCING')) ) {
                  document.getElementsByTagName('body')[0].className = 'bodySoldes';
           }
     }
     else if ( !getSwitchSite('DECO_SOLDES_BLOCKING') && (getSwitchSite('FLAG_IS_SOLD_PERIOD') || getSwitchSite('DECO_SOLDES_FORCING')) ) {
                  document.getElementsByTagName('body')[0].className = 'bodySoldes';
     }
}
/*############################################################################################## */
/* Chargement de la decoration de noel dans le cas ou le switch d activation est active */
function changeClassIfXmas() {

    if (getSwitchSite('SKIN_XMAS')) {
        var oDivBottom = document.getElementById("bottom");
        if (oDivBottom) {
        
            // Ajout style au UL du bottom
            var oUl = oDivBottom.firstChild;
            oUl.style.position = "relative";
            oUl.style.zIndex = 20;
            
            // Ajout image pour le bottom
            var oImg = document.createElement('img');
            oImg.src = "/"+_language+"/images/static/bg-glace.jpg";
            oImg.className = "basXmas";
            oDivBottom.appendChild(oImg);

            //Changement des styles
            changeBlocClass('global','globalXmas');
            changeBlocClass('bottom','bottomXmas');
            for (var i in document.getElementsByTagName('body'))  document.getElementsByTagName('body')[i].className = 'bodyXmas';
            for (var i in document.getElementsByTagName('h1')) {
                if (document.getElementsByTagName('h1')[i].className=='referencement') {
                    document.getElementsByTagName('h1')[i].className = 'referencementXmas';
                }
            }
            
        }
    }
     
}

/*############################################################################################## */
/* Changement des classes pour appliquer la deco OPECO si le switch SKIN_OPECO est active */
function changeClassIfOpeco() {
    if (getSwitchSite('SKIN_OPECO')) {
        var oBody = document.getElementsByTagName('body');
        oBody[0].className = 'bodyOpeco';
    }
}

/*############################################################################################## */
// Modifie le lien contact-us dans le bottom-link si le magasin auquel l utilisateur est connecte est dote du contact mail client-vendeur
var POST_LOAD_CONTACT_STOREINFOS_FUNCTION = function postLoadContactSi(httpStatus, theFlow) {
    if(httpStatus != null && httpStatus==200 && theFlow != "") {
        if(theFlow.indexOf('<span class="storeContact" id="storeContact">') != -1){
            var mailClientVendeur = theFlow.substr(theFlow.indexOf('<span class="storeContact" id="storeContact">'));
            mailClientVendeur = mailClientVendeur.substring(0,mailClientVendeur.indexOf('</span>'));
            
            var hrefClientVendeur = mailClientVendeur.substr(mailClientVendeur.indexOf('href="') + 6);
            hrefClientVendeur = hrefClientVendeur.substring(0,hrefClientVendeur.indexOf('"'));
            hrefClientVendeur = hrefClientVendeur.replace(/&amp;/g,"&");
            
            var onClickClientVendeur = mailClientVendeur.substr(mailClientVendeur.indexOf('onclick="') + 9);
            onClickClientVendeur = onClickClientVendeur.substring(0,onClickClientVendeur.indexOf('return false'));
            onClickClientVendeur = onClickClientVendeur.replace(/&amp;/g,"&");
            
            setHref('contactLink',hrefClientVendeur);
            document.getElementById('contactLink').onclick = function(){eval(onClickClientVendeur);return false;};
        }
    }
 }
