/**************************************************************************************************************************************************************************************************/
/* CONSTANTE */
/**************************************************************************************************************************************************************************************************/
	window.CONST_BGCOLORFILTER = '#001f6a'; //'#001f6a'
	window.CONST_BGCOLOROPACITY = 0.7;
	window.CONST_PATH_IMG = '/images/';
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* VARIABLES GLOBALES */
/**************************************************************************************************************************************************************************************************/
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* EVENTS */
/**************************************************************************************************************************************************************************************************/
	//window.addListener("load", $SurFlashTimer);

	if (window.addEventListener) { //DOM-2 FF, IE8n, etc.
	    window.addEventListener("load", initAll, false);
	} else if (window.attachEvent) { //DOM-1 IE7
	    window.attachEvent("onload", initAll);
	} else { // DOM-0 IE6
	    window.onload = initAll;
	}

//window.addEventListener("load", initAll);
function initAll(){
    traitement_png();
    if (typeof ($$) != "undefined") {
        initSelects();
        initpDynamic();
        initBulles();
        initRadios();
        initEventFocusBt();
    }
    PopUpNonTrouve();
}

/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Scintillement des backgrounds sous IE */
/**************************************************************************************************************************************************************************************************/
try{document.execCommand('BackgroundImageCache', false, true);}catch(e){};
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Fonctions */
/**************************************************************************************************************************************************************************************************/


/** BDA **/

function initEventFocusBt(){
    if($('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_TxtNumPlaque') ){
        $('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_TxtNumPlaque').addEvent('focus', function(){
            $('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_TxtNumPlaque').addEvent('keyup', keyBt);
            $('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_TxtCarteGrise').addEvent('keyup', keyBt);
        });
    }
}

function keyBt(event){
    //$('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_BtPlaque');
    var event = event || window.event;
    var target = event.target || event.srcElement;
    var keypress = event.keyCode ? event.keyCode : event.charCode;
    if(keypress == '13'){ // appui sur la touche entrée
        if (target.id == 'ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_TxtNumPlaque' )
            $('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_BtPlaque').click();
        else   
            $('ctl00_ctl00_BodyContent_ContenuPage_NorautoCarSelector_BtCarteGrise').click();
    }   
}

function carSelectorFocus(){
    var url = document.location;
    var tab = Array();
    var tagMsgError = document.getElementById("msgError");

    if (tagMsgError == null) {
        if ((url.toString()).split('#'))
            tab = (url.toString()).split('#');
        else
            tab[0] = (url.toString());
        window.document.location.href = tab[0] + '#identifier_car';
    }
}

function carSelectorFocus2(){
    var url = document.location;
    var tab = Array();
    var tagMsgError = document.getElementById("msgError");

    if (tagMsgError == null) {
        if ((url.toString()).split('#'))
            tab = (url.toString()).split('#');
        else
            tab[0] = (url.toString());
        window.document.location.href = tab[0] + '#selection_car';
    }
}

/** Fonction qui affiche une popup si une pièce n'a pas été trouvé ds la BDD **/
function PopUpNonTrouve()
{
    var tagNoProduct = document.getElementById("NoProduct");
    if (tagNoProduct){
        if(tagNoProduct != null)
        {
            $ShowPopup("PopUp/non-trouve.aspx?famille=" + tagNoProduct.value);
        }
    }
}

/** Fonction qui affiche une popup quand on enregistre un vehicule dans les cookies**/
function PopUpBienEnregistrer() {
    var tagBienEnregistrer = document.getElementById("BienEnregistrer");
    if (tagBienEnregistrer) {
        if (tagBienEnregistrer != null) {
            $ShowPopup("PopUp/car-bien-enregistre.aspx");
            return true;
        }
    }
    return false;
}

/** Fonction qui crée une popup d'attente pour les requêtes AJAX **/
function waitingPopup(){
    // FILTRE
    var filter = document.createElement('div');
    filter.className = 'opac20';
    filter.id = 'filtre2';
    var scrollHeight = (document.documentElement && document.documentElement.scrollLeft) || (window.pageXOffset || self.pageXOffset || document.body.scrollLeft) || (document.documentElement && document.documentElement.scrollTop) || (window.pageYOffset || self.pageYOffset || document.body.scrollTop);
    filter.style.height = scrollHeight + window.screen.height+'px';
    filter.style.width = '100%';
    filter.style.zIndex = 10000;
    filter.style.position = 'absolute';
    filter.style.top = 0;
    filter.style.left = 0;
    filter.style.background = '#000';
    filter.style.display = 'block';
    var myBody = $$('body');
    myBody[0].appendChild(filter);
    
    // POPUP
    var popup = document.createElement('div');
    popup.id = 'waiting_popup';
    popup.style.width = 208+'px';
    popup.style.height = 14+'px';
    popup.style.position = 'absolute';
    var h = getWindowHeight()/2;
    popup.style.top = scrollHeight + h +'px';
    popup.style.left = '50%';
    popup.style.zIndex = 10001;
    popup.style.margin = '-7px 0  0 -110px';
    popup.innerHTML = '<img src=\"images/img-loader3.gif\" alt=\"\" />';
    myBody[0].appendChild(popup);
}

/** Fonction qui supprimer la popup d'attente pour les requêtes AJAX **/
function deleteWaitingPopup(){
    var myBody = $$('body');
    myBody[0].removeChild($('waiting_popup'));
    if($('filtre2')){
        myBody[0].removeChild($('filtre2'));
    }
}

/** Spécifique **/
function initpDynamic(){
    var pDynamic = $$('p.pDynamic');
    var nbpDynamic = pDynamic.length;
    for(var i = 0 ; i < nbpDynamic ; i++)
        pDynamic[i].addEvent('click', affpDynamic);
}

function affpDynamic(event){
    var target; var blocG = $('blocG'); var blocD = $('blocD'); var cg = $('carte_grise'); var num_im = $('num_im');
    (document.all) ? target = window.event.srcElement : target = event.target;
    var divs = $ES('div', $(target).parentNode.parentNode);
    var nextDiv = divs[0];
    if ( nextDiv.getStyle('display') == 'none') {
        nextDiv.setStyle('display','block');
        $(target).parentNode.className = ($(target).parentNode.className).substring(0,2) + ' pDynamic pActif span_sp4';
    }else if(nextDiv.getStyle('display') == 'block'){
        nextDiv.setStyle('display','none');
        $(target).parentNode.className = ($(target).parentNode.className).substring(0,2) + ' pDynamic pInactif span_sp4';
    }
}


/** Spécifique tableau car selector **/
function initRadios(){
    var tab = $('tab_refs');
    if(tab){
        var p = $ES('p', tab);
        var nbp = p.length;
        for(var i=0 ; i<nbp ; i++){
            p[i].addEvent('click', selectRadio);
            p[i].addEvent('mouseover', affBg);
            p[i].addEvent('mouseout', initLignes);
        }
    }
}

function selectRadio(){
    (this.nodeName == 'INPUT') ? ligne = parent(this,3) : ligne = parent(this,2);
    input = $ES('input', ligne);
    input[0].click();
}

function affBg(event){
    //initLignes();
    var target;var ligne;var pLigne;var nbpLigne;var input;
    (this.nodeName == 'INPUT') ? ligne = parent(this,3) : ligne = parent(this,2);
    this.style.cursor = 'pointer';
    input = $ES('input', ligne);
    //input[0].click();
    pLigne = $ES('p', ligne);
    nbpLigne = pLigne.length;
    for(var i=0 ; i<nbpLigne ; i++)
        pLigne[i].parentNode.className = 'actif';
}

function initLignes(){
    var tab = $('tab_refs');
    var p = $ES('p', tab);
    var nbp = p.length;
    for(var i=0 ; i<nbp ; i++)
        p[i].parentNode.className = '';
}
/** fin Spécifique tableau car selector **/ 

/** Fonctions gérant les bulles d'aide **/
function initBulles(){
    var bulles = $$('img.infobulle');
    var nbBulles = bulles.length;
    for(var i=0 ; i< nbBulles ; i++){
        bulles[i].addEvent('mouseover', displayBulle);
        bulles[i].addEvent('mouseout', maskBulle);
    }
}

function getPos(evt){
    var tabPos = new Array();
	if(!evt) evt = window.event;    
	x = evt.clientX;
	y = evt.clientY;
	tabPos[0]=x;
	tabPos[1]=y;
	return tabPos;
}

function maskBulle(){
    var myBody = $$('body');
    if($('infobulle_content')){
        var content = myBody[0].lastChild.innerHTML;
        myBody[0].removeChild(myBody[0].lastChild);
        this.alt = content;
    }else{
        return;
    }
}

function displayBulle(evt){
    var target = this;
    var position = getPos(evt);
    // taille du scroll vertical
    var scrollHeight = (document.documentElement && document.documentElement.scrollLeft) || (window.pageXOffset || self.pageXOffset || document.body.scrollLeft) || (document.documentElement && document.documentElement.scrollTop) || (window.pageYOffset || self.pageYOffset || document.body.scrollTop);
    // création de la div et récupération de ses infos
    var newDiv = document.createElement('div');
    newDiv.innerHTML = $(target).alt;
    $(target).alt = '';
    newDiv.style.position = 'absolute';
    newDiv.style.top = '15000px';
    newDiv.style.display = 'block';
    newDiv.style.width = '134px';
    newDiv.style.zIndex = '999';
    newDiv.style.background = '#fff';
    
    var myBody = $$('body');
    myBody[0].appendChild(newDiv);
    var h = newDiv.offsetHeight;
    newDiv.style.height = h+'px';
    newDiv.style.top = position[1]+h-40+scrollHeight+'px';
    newDiv.className = 'infobulle_content';
    newDiv.id = 'infobulle_content';
    
    (position[0] > (myBody[0].offsetWidth - 250)) ? newDiv.style.left = (position[0]-153)+'px' : newDiv.style.left = (position[0]-67)+'px';
}

function parent(elt, num){
    var n = 0;
    while(n!=num){
        elt = elt.parentNode;
        n++;
    }
    return elt;
}

/** Fonctions gérant une fausse liste déroulante **/
/** 
La liste doit avoir la structure suivante :
<div id="liste_deroulante" class="select">
	<h5 id="selection" class="active"><span class="txt_select">Afficher un autre rayon</span></h5>
	<ul id="choix_select" class="select_active">
		<li><a href="#" title="">Accessoires</a></li>
        ....
        <li><a href="#" title="">Alimentation Air Carburant</a></li>
	</ul>
</div><!-- liste_deroulante -->
**/

function eventTarget(event){
if (event.target) return event.target;
if (event.srcElement) return event.srcElement;
}
/** Fonction qui génère une scrollbarre dans la fausse liste déroulante si plus de 10 sous-familles **/
function refreshSelects(){
    var selects = $$('div.select');
    var nbselects = selects.length;
    var lis;var nbLis;var ul;
    for(var i=0 ; i<nbselects ; i++){
        lis = $ES('li', selects[i]);
        nbLis = lis.length;
        ul = $ES('ul', selects[i]);
        if(nbLis > 10)ul[0].style.height = '186px';
    }
}

/** fonction qui dynamise toutes les fausses listes déroulantes de la page **/
    function initSelects() {
        var lis; var nbLis; var ul;
        $$('div.select').each(function(el) {
            initSelect(el);
            ul = $E('ul', el);
        });
    }

/** function qui dynamise une liste déroulante **/
function initSelect(elt) {
    
    if(elt){
        var ul = $E('ul', elt ); 
        var selection = $E('h5', elt);
        selection.removeEvent('click', affSelect);
        selection.addEvent('click', affSelect);
    }
}

var lienSelected = '';
var listeSelected = '';
//tabSelected = new Array();

/** Fonction qui initialisent les liens du menu d'une fausse liste déroulante et gère son affichage **/
var initLinksSelect = function(event) {

    var target = eventTarget(event);
    var elt = parent(target, 3);
    var ul = $E('ul', elt);
    
    var selection = $E('h5', elt);
    
    /** On remplace le texte sélectionné dans la liste **/
    if (selection) {
        selection.innerHTML = '<span class=\"txt_select\">' + target.innerHTML + '</span>';
        selection.className = 'inactive';
    }
    ul.className = 'dn';
}

// état inactif
var etat = 0;

/** Fonction gérant l'affichage d'une fausse liste déroulante **/
var affSelect = function (event){
    
    var target = eventTarget(event);
    var listeS = (target.nodeName == 'SPAN') ? parent(target,2).id : parent(target,1).id;

    var lien_actif = $E('#'+listeS.toString() +' a.actif');
    
    if (event.preventDefault) event.preventDefault();
    var select = parent(this, 1);
    var txt_select = this;
    var ul = $E('ul', select);
    var myBody = $E('body', 'document');
    
    if (ul.className=='dn') {
        maskAllSelects();
        ul.className = 'db';
        
        // Gestion des touches clavier pour le focus ss-famille
        
        if(lien_actif) {
            lien_actif.focus();
        }else{
            var firstLink = $E('a', ul);
            firstLink.focus();
        }
        ul.removeEvent('keyup',linkFocus);
        ul.addEvent('keyup',linkFocus);
        
        myBody.addEvent('click', function(){
            txt_select.className == 'inactive';
            ul.className = 'dn';
            ul.removeEvent('keyup',linkFocus);
            myBody.removeEvents('click');
            etat = 0; // liste inactive
        });
    }
    else {
        maskAllSelects();
        txt_select.className == 'inactive';
        ul.className = 'dn';
        ul.removeEvent('keyup',linkFocus);
        myBody.removeEvents('click');
        etat = 0; // liste inactive
    } 
    event.cancelBubble = true;
}

var keypressed = 0;
var key = '';
var lienCible;var nextLink;var previousLink;

/** Fonction qui permet le déplacement dans la liste en fonction du caractère tapé **/
function linkFocus(event){
    var event = event || window.event;
    var target = event.target || event.srcElement;
    keypressed = event.keyCode ? event.keyCode : event.charCode;
    
    if (event.preventDefault) event.preventDefault();
    if (event.stopPropagation) event.stopPropagation();
    event.returnValue = false;
    
    // gestion uniquement des chiffres, des lettres et des flèches haut et bas
    setTimeout(function() {
    if( (keypressed > 64 && keypressed < 91) || (keypressed > 46 && keypressed < 59) || (keypressed > 96 && keypressed < 106) || (keypressed == 38) || (keypressed == 40) ){
        
        var letter = '';var index = 0;var links;
        var maliste = parent(target, 2);
            
        switch (keypressed)
        {
            case 97: key = '1';break;
            case 98: key = '2';break;
            case 99: key = '3';break;
            case 100: key = '4';break;
            case 101: key = '5';break;
            case 102: key = '6';break;
            case 103: key = '7';break;
            case 104: key = '8';break;
            case 105: key = '9';break;
            default: key = String.fromCharCode(keypressed);
        }
        
	    var li = target.getParent('li');
	    
	    if(keypressed == 40){ // fleche bas
	        if (li.getNext('li')) {
                nextLink = (li.getNext('li')).getFirst('a');
                if(nextLink) nextLink.focus();
                lienCible = nextLink;
            }
            else lienCible = target;
        }else if (keypressed == 38){ // fleche haut
            if (li.getPrevious('li')) {
                previousLink = (li.getPrevious('li')).getFirst('a');
                if(previousLink) previousLink.focus();
                lienCible = previousLink;
            }
            else lienCible = target;
        }else{
            links = $ES('a', maliste);
            while(letter != key){
                if(index != links.length){
                    letter = (links[index].innerHTML).substring(0,1);
                    index++;
                }else{
                    return;
                }
            }
            index--;
            lienCible = links[index];
            lienCible.focus();
        }
    }
    },100);
}


/** On masque toutes les fausses listes déroulantes **/
function maskAllSelects(){
    var selects = $$('div.select');
    var nbselects = selects.length;
    var uls;
    for (var i = 0; i < nbselects; i++) {
        uls = $ES('ul', selects[i]);
        if(uls[0].className == 'db'){
            uls[0].className = 'dn';
        }
    }
}

function removeAllEvents(){
    var selects = $$('div.select');
    var nbselects = selects.length;
    var uls;var liens;var nbliens;var selections;var selection;
    //alert(nbselects);
    for (var i = 0; i < nbselects; i++) {
       //alert( selects[i].id);
       selects[i].removeEvent('click',affSelect);
       uls = $ES('ul', selects[i]);
       uls[0].removeEvent('keyup',linkFocus);
       liens = $ES('a', uls[0]);
       nbliens = liens.length;
       selections = $ES('h5', selects[i]);
       selection = selections[0];
       selection.removeEvents('click');
       for(var i=0 ; i< nbliens ; i++){
            liens[i].removeEvent('click',initLinksSelect);
       }
    }
}
/** FIN LISTE DEROULANTE **/
/**** FIN BDA **/

function nothing(TsEvent){
	var event = new Event(TsEvent);
	event.stopPropagation();
	event.stop();
}
/*function $HideSurFlash(){
    if( $('ctl00_ctl00_BodyContent_ContenuPage_surFlashCenter') ){$('ctl00_ctl00_BodyContent_ContenuPage_surFlashCenter').setStyle('height', '0px');}
}
function $SurFlashTimer(f){
    if( $('ctl00_ctl00_BodyContent_ContenuPage_surFlashCenter') ){setTimeout("$HideSurFlash()", 9000);}
}*/
var timeoutCpt = '';


function zoomImage(TsEvent){
    clearTimeout(timeoutCpt);

    if( $('zoom_product') && $('zoom_product').getStyle('display') == 'block' ){return;}

	var event = new Event(TsEvent);
    var el = $(event.target).getParentTag('div.ligne-produit');	
    
    if( el ){
        el.setProperty('id', 'zoom_product_temp');
        el.setStyle('zIndex', 4);
        var el_a = $E('span.zoom_product', el);
        if( el_a ){
            el_a.setProperty('id','zoom_product');
            el_a.setStyles({'display': 'block' , 'zIndex' : 99999 });
        }
    }
    $$('div.ct_liste_pdt').each(function (elt) {
        elt.style.position="static";
    });
    
    event.stopPropagation();
    event.stop();
}
function zoomImage_(){
    if( !$('zoom_product') ){return;}

    clearTimeout(timeoutCpt);
    timeoutCpt = setTimeout("zoomImage__()", 20);
}
function zoomImage__(){
    if( !$('zoom_product') ){return;}

    clearTimeout(timeoutCpt);
    if( $('zoom_product_temp') ){
        $('zoom_product_temp').setStyle('zIndex', 3);
        $('zoom_product_temp').removeProperty('id');
    }

    $('zoom_product').setStyles({'display': 'none'});
    $('zoom_product').removeProperty('id');
}


/* Gestion Zoom images cross-selling */
/** 
* Fonction permettant d'afficher le zoom de l'image ciblée
**/
function zoomImgCs(TsEvent){
    clearTimeout(timeoutCpt);

    if( $('zoom_product') && $('zoom_product').getStyle('display') == 'block' ){return;} // si déjà zoom, on ne fait rien

    // récupération de la balise cible de l'event pour lui ajouter du style et afficher la bonne div
	var event = new Event(TsEvent);
    var el = $(event.target).getParentTag('tr.img_cs');	
    if( el ){
        el.setProperty('id', 'zoom_product_temp');
        el.setStyle('zIndex', 99);
        var el_a = $E('span.zoom_product', el);
        var el_img =  $E('img', el_a);
        if( el_a ){
            el_a.setProperty('id','zoom_product')
            el_a.setStyles({'display': 'block', 'zIndex' : 3});
            el_a.parentNode.setStyles({'zIndex' : 5});
            //alert('classe de l\'élément père : '+child.parentNode.className);
        }
    }

    event.stopPropagation();
    event.stop();
}
function zoomImgCs_(){
    if( !$('zoom_product') ){return;}

    clearTimeout(timeoutCpt);
    timeoutCpt = setTimeout("zoomImgCs__()", 20);
}
function zoomImgCs__(){
    if( !$('zoom_product') ){return;}

    clearTimeout(timeoutCpt);
    if( $('zoom_product_temp') ){
        $('zoom_product_temp').setStyle('zIndex', 1);
        $('zoom_product_temp').removeProperty('id');
    }

    $('zoom_product').setStyles({'display': 'none'});
    $('zoom_product').removeProperty('id');
}


/* fin */



function bulleAide(TsEvent){
	var event = new Event(TsEvent);
    
    var el = $(event.target).getParentTag('div.ligne-produit');	

    if( el ){el.setStyle('zIndex', 4);}

    event.stopPropagation();
    event.stop();
}
function bulleAide_(TsEvent){
	var event = new Event(TsEvent);
    
    var el = $(event.target).getParentTag('div.ligne-produit');	

    if( el ){el.setStyle('zIndex', 3);}

    event.stopPropagation();
    event.stop();
}
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Popup Thomas SEGOND */
/**************************************************************************************************************************************************************************************************/
if(document.documentElement && document.documentElement.clientWidth){window.TsDocRef = document.documentElement;}else{window.TsDocRef = document.body;}
if( (window.ie || window.ie6) && !window.ie7){window.IElt7=true;}else{window.IElt7=false;}

function $SetFilterPopup(){
	if( !$('filter') ){return;}

	if( $('filter').getStyle('display') == 'block' ){
		setTimeout('$SetFilter()', 20);
		setTimeout('$SetPopup()', 20);
	}
}
function $ShowFilter(TsBgColorFilter){
	TsBgColorFilter = TsBgColorFilter || window.CONST_BGCOLORFILTER;

	if( !$('filter') ){$CreateFilter(TsBgColorFilter);}

	if( $('filter').getStyle('display') == 'block' ){return;}

	if ( window.IElt7 ){$GestionSelect('hidden');}

	$SetFilter();
	$('filter').setStyle('display', 'block');

	// Evenements pour gestion du filtre et de la popup
	window.addListener('resize', $SetFilterPopup);
	window.addListener('DOMMouseScroll', $SetFilterPopup);
	window.addListener('scroll', $SetFilterPopup);
}
function $HideFilter(){
	if( !$('filter') ){return;}
	
	$('filter').setStyle('display', 'none');
	if( window.IElt7 ){$GestionSelect('visible');}
}
function $SetFilter(){
	var TsLargeur = parseInt(window.TsDocRef.clientWidth) + parseInt(window.TsDocRef.scrollLeft);
	var TsHauteur = parseInt(window.TsDocRef.clientHeight) + parseInt(window.TsDocRef.scrollTop);

	if ($('global')) {
	    if ($('global').offsetHeight > TsHauteur) { TsHauteur = parseInt($('global').offsetHeight); }
	    if ($('global').offsetWidth > TsLargeur) { TsLargeur = parseInt($('global').offsetWidth); }
    }

	if( $('filter') ){$('filter').setStyles({'width':TsLargeur, 'height':TsHauteur})}
}
function $CreateFilter(TsBgColorFilter){
	var TsFilter = new Element('div').inject(document.body);
	TsFilter.setStyles({'position':'absolute', 'top':0, 'left':0, 'width':0, 'height':0, 'z-index':10000, 'background':TsBgColorFilter, 'display':'none', 'overflow':'hidden', 'opacity':window.CONST_BGCOLOROPACITY});
	TsFilter.setProperty('id', 'filter');
}
function $GestionSelect(TsOption){
	var TsElementsSelect = document.getElementsBySelector('select', false);
	for(var i=0,l=TsElementsSelect.length;i<l;i++){TsElementsSelect[i].setStyle('visibility', TsOption);}
}
function $ShowPopup(TsUrl, TsEvent){
    TsEvent =  TsEvent || null;
	if( TsEvent != null ){if(TsEvent ){var event = new Event(TsEvent);}}

	$ShowFilter();

	if( !$('popup') ){$CreatePopup();}else{$HidePopup();}

    TsUrl = $UrlRamdom(TsUrl);
	var myAjax = new Ajax(TsUrl, {method: 'get', onRequest:$CreateLoader, onComplete:$SetPopupComplete, onFailure:$HideAll}).request();

	if( TsEvent != null ){
	    if(TsEvent ){
		    event.stopPropagation();
		    event.stop();
	    }
	}
}
function $ShowPopupBiz(TsUrl){
	$ShowFilter();

	if( !$('popup') ){$CreatePopup();}else{$HidePopup();}

    TsUrl = $UrlRamdom(TsUrl);
	var myAjax = new Ajax(TsUrl, {method: 'get', onRequest:$CreateLoader, onComplete:$SetPopupComplete, onFailure:$HideAll}).request();
}
function $SetPopupComplete(tsContent){
	if( !$('popup') ){return;}
	
	var tsStart = '<!-- Start POPUP -->';
	var tsEnd = '<!-- End POPUP -->';
	
	if( tsContent.indexOf(tsStart) > -1 && tsContent.indexOf(tsEnd) > -1 ){
		$('popup').innerHTML = tsContent.substring(tsContent.indexOf(tsStart), tsContent.indexOf(tsEnd)-1);
	}else{
		$('popup').innerHTML = tsContent;
	}

	TsEvalScripts($('popup').innerHTML);

	var tsElementA = $ES('a.fermer00', 'popup');
	if( tsElementA[0] ){tsElementA[0].setStyle('visibility', 'visible');}
	$SetPopup();
}
function TsEvalScripts(evalResponse){
	var script, scripts;
	scripts = [];

	var regexp = /<script[^>]*>([\s\S]*?)<\/script>/gi;

	while ((script = regexp.exec(evalResponse))) scripts.push(script[1]);

	scripts = scripts.join('\n');

	if (scripts) (window.execScript) ? window.execScript(scripts) : window.setTimeout(scripts, 0);
}
function $HidePopup(){
	if( !$('popup') ){return;}
	$('popup').setHTML('');
	$('popup').setStyle('display', 'none');
	var htmlElement = document.getElementsByTagName('html')[0];
	htmlElement.style.overflow = 'auto';
}
function $SetPopup(){
	$SetPosition('popup')
	$HidePopupLoader();
}
function $SetPosition(TsElement){
	$(TsElement).setStyles({'visibility':'hidden', 'display':'block'});
	
	var TsScrollTop = 0;
	var TsScrollLeft = 0;
	window.pageXOffset ? TsScrollLeft = window.pageXOffset : TsScrollLeft = window.TsDocRef.scrollLeft;
	window.pageYOffset ? TsScrollTop = window.pageYOffset : TsScrollTop = window.TsDocRef.scrollTop;

	window.innerHeight ? TsClientHeight = window.innerHeight : TsClientHeight = window.TsDocRef.clientHeight;
	
	
	
	var TsBlockTop = (parseInt(TsClientHeight) - parseInt($(TsElement).offsetHeight)) / 2;
	TsBlockTop = parseInt(TsScrollTop + TsBlockTop);

	TsBlockTop = TsBlockTop + 'px';
	var TsBlockLeft = (parseInt(TsDocRef.clientWidth) - parseInt($(TsElement).offsetWidth)) / 2;
	TsBlockLeft = parseInt(TsScrollLeft + TsBlockLeft) + 'px';

	if( $(TsElement) ){
//		$(TsElement).setOpacity(0)
		$(TsElement).setStyles({'top':TsBlockTop, 'left':TsBlockLeft, 'visibility':'visible'})
//		var myFx = new Fx.Style(TsElement, 'opacity',{duration:100000}).start(0,1);
	}
}
function $CreatePopup(){
	var TsPopup = new Element('div').inject(document.body);
	TsPopup.setStyles({'position':'absolute', 'top':0, 'left':0, 'z-index':10001, 'display':'none', 'overflow':'hidden'});
	TsPopup.setProperty('id', 'popup');
}
function $CreatePopupLoader(){
	var TsPopup = new Element('div').inject(document.body);
	TsPopup.setStyles({'position':'absolute', 'top':0, 'left':0, 'z-index':3, 'display':'none', 'overflow':'hidden'});
	TsPopup.setProperty('id', 'popup_loader');
}
function $CreateLoader(){
	var htmlElement = document.getElementsByTagName('html')[0];
	htmlElement.style.overflow = 'hidden';

	if( !$('popup_loader') ){
		$CreatePopupLoader();
	}else{
		$SetPosition('popup_loader');
		return;
	}

	var TsLoader = new Element('div');
	TsLoader.setStyles({'position':'relative', 'width':250, 'overflow':'hidden', 'text-align':'center', 'background': '#fff', 'padding-top':10, 'padding-bottom':10});
	TsLoader.setProperty('id', 'loader');

	var TsImage = new Element('img').inject(TsLoader);
	var tsSrcImg = window.CONST_PATH_IMG + 'img-loader.gif';
	if( $('SiteWebUrl') ){ tsSrcImg = $('SiteWebUrl').value + tsSrcImg;}
	TsImage.setProperty('src', tsSrcImg);
	TsImage.setProperty('alt', 'Chargement en cours ...');

	var TsTexte = new Element('p').inject(TsLoader);
	TsTexte.setStyles({'padding-left':10, 'padding-right':10});
	TsTexte.setHTML('Chargement en cours ...');
	
	TsLoader.inject($('popup_loader'));
	$SetPosition('popup_loader');
}
function $HidePopupLoader(){
	if( !$('popup_loader') ){return;}
	$('popup_loader').setStyle('display', 'none');
}
function $HideAll(TsEvent){
	var event = new Event(TsEvent);

	$HidePopupLoader();
	$HidePopup();
	$HideFilter();

    event.stopPropagation();
    event.stop();
}
function $UrlRamdom(TsUrl){
	if( TsUrl.contains('?') ){
		return TsUrl + '&nocache='+Math.random();
	}else{
		return TsUrl + '?nocache='+Math.random();
	}
}
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Addon MOOTOOLS */
/**************************************************************************************************************************************************************************************************/
if(typeof(Element) != "undefined"){
	if(Element.extend){
		Element.extend({
			getParentTag: function(parent){ // Retourne le premier parent avec le tag demandé et/ou la id et/ou class -> div#monid.maclass
				var TsTagName, TsClassName , TsId;
				var TsParentClass = parent.split('.');
				TsParentClass.length > 1 ? TsClassName = TsParentClass[1] : TsClassName = '';
				var TsParentId = TsParentClass[0].split('#');
				if( TsParentId.length > 1 ){TsId = TsParentId[1];}else{TsId = '';}
				TsTagName = TsParentId[0];
				var TsElement = this;
				while( $(TsElement) ){
					if(TsElement.getTag() == 'body'){break;}
	
					var TsFlag = true;
					if( TsElement.getTag() != TsTagName ){TsFlag = false;}
					if( TsId != '' && TsElement.getProperty('id') != TsId ){TsFlag = false;}
					if( TsClassName != '' && !TsElement.hasClass(TsClassName) ){TsFlag = false;}
					if( TsFlag ){break;}
	
					TsElement = TsElement.parentNode;
				}
				return $(TsElement);
			}
		})
	}
}
/**************************************************************************************************************************************************************************************************/
//INTEGRATION DU FICHIER FONCTIONS.JS POUR REDUIRE LES REQUETES HTTP

/* Scintillement des backgrounds sous IE */

try{document.execCommand('BackgroundImageCache', false, true);}catch(e){};


function AffDiv(num) {
	var nb_div = 3;
	var div=document.getElementById("div0"+num);
	var div_elt = "";
	for(l=0; l <nb_div ; l++) {
		div_elt=document.getElementById("div0"+l);
		div_elt.style.display='none';
	}
	div.style.display='';	
}

function AffOneDiv(num) {
	var div=document.getElementById("div"+num);
	var cb= document.getElementById("cb"+num);
	if(cb.checked == true) {
		div.style.display='';	
	} else {
		div.style.display='none';	
	}
}


function addLoadListener(func) {
   if (window.addEventListener) {
      window.addEventListener("load", func, false);
   } else if (document.addEventListener) {
      document.addEventListener("load", func, false);
   } else if (window.attachEvent) {
      window.attachEvent("onload", func);
   }
}


function changeClassName3(blocId,inputId) {
	if(blocId=="ctl00_ctl00_BodyContent_ContenuPage_zone02"){
	    document.getElementById("domicile").className="zone_form01";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_zone02").firstChild.className="dt02";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_zone03").firstChild.className="dt01";
	    document.getElementById("autreAdresse").className="zone_form01_hidden";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison02").checked="checked";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison03").checked="";
    }
    else{
        document.getElementById("domicile").className="zone_form01_hidden";
	    document.getElementById("autreAdresse").className="zone_form01";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_zone02").firstChild.className="dt01";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_zone03").firstChild.className="dt02";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison02").checked="";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison03").checked="checked";
    }

}

function changeClassName(blocId,inputId) {
	if(blocId=="ctl00_ctl00_BodyContent_ContenuPage_zone02"){
	    document.getElementById("domicile").style.display="block";
	    document.getElementById("dtzone02").className="dt02";
	    document.getElementById("dtzone03").className="dt01";
	    document.getElementById("autreAdresse").style.display="none";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison02").checked="checked";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison03").checked="";
    }
    else{
        document.getElementById("domicile").style.display="none";
	    document.getElementById("autreAdresse").style.display="block";
	    document.getElementById("dtzone02").className="dt01";
	    document.getElementById("dtzone03").className="dt02";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison02").checked="";
	    document.getElementById("ctl00_ctl00_BodyContent_ContenuPage_livraison03").checked="checked";
    }

}


function changeClassName2(blocId,inputId) {
	
	var dt_elements = "";
	var span_radio = "";
	var input_radio = "";
	
	/** Tous les elements */
	var dl=document.getElementsByTagName("dl");
	var dt=document.getElementsByTagName("dt");
	var dd=document.getElementsByTagName("dd");
	
	/** Elements propres au bloc selectionné */
	alert("8"+blocId+"8");
	var bloc_selected = document.getElementById(blocId); /** bloc selectionné */
	var input_selected= document.getElementById(inputId); /** input selectionné */	
	var bselected = input_selected.checked; /** indicateur de selection */
	
	var list_dt_selected=bloc_selected.getElementsByTagName("dt"); /** les dt du bloc selectionné */
	var dt_selected=list_dt_selected[0]; /** Titre du bloc */
	var list_dd_selected=bloc_selected.getElementsByTagName("dd"); /** les dd du bloc selectionné */
	var dd_selected=list_dd_selected[0];  /** Contenu du bloc */
	/** Fin Elements propres au bloc selectionné */
		
	var nb_bloc = dt.length; /** Nombre de bloc dans la page */
	
	/** Defaut :
		classname par defaut
		Fermeture de tous les blocs  		
		boutons radio non selectionné
	*/
	for(i=0;i<nb_bloc;i++) {
		
		dt[i].className="dt01";
		if(dl[i].id != "adr_facture") {
		    
			dd[i].className="zone_form01_hidden";
			dt_elements=dt[i].childNodes;		
		
			for(j=0;j<dt_elements.length;j++) {
				if(dt_elements[j].className=="span_radio") {
					span_radio = dt_elements[j];
					input_radio = span_radio.firstChild;
					input_radio.checked = '';				
				}
			}
		}
	}
	
	/** selection du bloc */
	
	if(bselected==true) {
		input_selected.checked = false;		
		dt_selected.className="dt01";
		dd_selected.className="zone_form01_hidden";
	} else {
		input_selected.checked = true;
		dt_selected.className="dt02";
		dd_selected.className="zone_form01";
	}
}

function AfficheFormulaireRdv(){
    var CheckBoxRdv = document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_cbRdv');
    var DivRdv = document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_rdv_formulaire');
        if (CheckBoxRdv.checked == true){
            DivRdv.style.display = 'block';
        }
        else{
            DivRdv.style.display = 'none';
        }
}

function InfoPaiement(TsInput){
    var TsTableauPaiement = new Array('texte_mode_paiementCB', 'texte_mode_paiementCHQ', 'texte_mode_paiementVIR');
    for (i in TsTableauPaiement){
        var TsElement00 = document.getElementById(TsTableauPaiement[i]);
        if(!TsElement00){continue;}
        var TsElementActif = 'texte_' + TsInput;
        if(TsTableauPaiement[i] == TsElementActif){
            TsElement00.style.display = 'block';
        }else{
            TsElement00.style.display = 'none';
        }
    }
    
    if (document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_rdv_paiement_cb') && document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_rdv_paiement_non_cb')){
    var TsElement01 = document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_rdv_paiement_cb');
    var TsElement02 = document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_rdv_paiement_non_cb');
    if (TsInput == 'mode_paiementCB'){
    TsElement01.style.display = 'block';
    TsElement02.style.display = 'none';
        if (document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_cbRdv').checked == true){
        document.getElementById('ctl00_ctl00_BodyContent_ContenuPage_rdv_formulaire').style.display = 'block';
        }
    }
    else{
    TsElement01.style.display = 'none';
    TsElement02.style.display = 'block';
    }
    }
}

function AfficherInfobullePrix(divVump)
{
    divVump.style.display = 'block';
}

function CacherInfobullePrix(divVump)
{
    divVump.style.display = 'none';
}

function GetSrcElt(e) {
	if (!e) e = window.event;
	if (e.srcElement) return e.srcElement;
	else if (e.target) return e.target;
	return null;
}

/* Ouverture de popup */
function openPopup(TsUrl, TsEvent){
    largeur=544;
    hauteur=555; 
    options="menubar=no,scrollbars=1,statusbar=no,";

    var top=(screen.height-hauteur)/2;     
    var left=(screen.width-largeur)/2;    
    
    $HidePopupLoader();
	$HidePopup();
    $HideFilter();
    window.open(TsUrl,"Conseils","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options); 
}
/*fonction pour faire defiler des produits sur la page d'accueil*/
var i=1,di=1,tem=2500
function defil_produits() {
i++;
if (i>3) {i=1};
if( document.getElementById('produit'+i) ){
    document.getElementById('produit'+i).style.display='block';
    document.getElementById('produit'+di).style.display='none';
}
di=i
setTimeout('defil_produits()',tem);
}

/**************************************************************************************************************************************************************************************************/
// INTEGRATION DU FICHIER DU FICHIER SLEIGHT.JS POUR REDUIRE LES REQUETTES HTTP
    // Navigateur et Version
    var X_nameNavigateur = 'FF'; // Par default Firefox
    var X_versionNavigateur = 0; // Par default pas de version

    function mon_navigateur(X_navigateur){
	    var X_tabNav = X_navigateur.split(';');
	    for(var i=0,x=X_tabNav.length;i<x;i++){
		    // Si IE
		    if(X_tabNav[i].indexOf('MSIE') > -1){
			    X_nameNavigateur = 'IE';
			    var X_version = X_tabNav[i].replace('MSIE','');
			    X_versionNavigateur = X_version.replace(' ','');
		    }
	    }
    }

    function traitement_png(){
        // Version Navigateur
        mon_navigateur(navigator.appVersion);
       
        // Si IE et version inferieur à la 7
        if (X_nameNavigateur == 'IE' && X_versionNavigateur < 7) {
         
            // Recupere URL du site dans input type hidden
            var X_obj = document.getElementById('SiteWebUrl');
            if(X_obj){
	            // Traitement des images de la page
		        for (var i = document.images.length - 1, X_img = null; (X_img = document.images[i]); i--) {
	                // png
			        if(X_img.src.match(/\.png/i) != null) {
				        var X_src = X_img.src;
				        X_img.style.width = parseInt(X_img.offsetWidth) + "px";
				        X_img.style.height = parseInt(X_img.offsetHeight) + "px";
				        X_img.style.background ="none";
				        //alert(X_src);
				        X_img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + X_src + "', sizingMethod='crop')";
				        X_img.src = X_obj.value + "/images/bg-blank.gif";
			        }
		        }
		    }
        }
    }
/**************************************************************************************************************************************************************************************************/

function getWindowHeight() {
    var h = 0;
    if (typeof (window.innerHeight) == 'number') { // Netscape
        h = window.innerHeight;
    } else if (document.documentElement && document.documentElement.clientHeight) {
        h = document.documentElement.clientHeight;
    } else if (document.body && document.body.offsetHeight) { //client
        h = document.body.offsetHeight;
    }
    return h;
}


function etendHauteurContent() {
    if (document.getElementById('middle')) document.getElementById('middle').style.height = "auto";
}
addLoadListener(etendHauteurContent);


// empeche le ctrl+c ctrl+v pour les emails
function process_keypress3(event, X_this) {
    event = event || window.event;
    var X_touche = (event.which) ? event.which : event.keyCode;
    var X_toucheCtrl = (event.ctrlKey) ? event.ctrlKey : event.ctrlKey;
    if ((String.fromCharCode(X_touche).toLowerCase() == 'c' && X_toucheCtrl) || (String.fromCharCode(X_touche).toLowerCase() == 'v' && X_toucheCtrl)) {
        if ((String.fromCharCode(X_touche).toLowerCase() == 'v' && X_toucheCtrl)) { GetSrcElt(event).value = ''; }
        show_erreur("Vous ne pouvez pas faire de copier-coller dans ce champ.");
        return false;
    }
}
/* Gestion des .hover sous IE6 */
/*sfHover = function() {
    if (document.getElementById("menu")) {
        var sfEls = document.getElementById("menu").getElementsByTagName("li");
        for (var i = 0; i < sfEls.length; i++) {
            sfEls[i].onmouseover = function() {
                this.className += " sfhover";
            }
            sfEls[i].onmouseout = function() {
                this.className = this.className.replace(new RegExp(" sfhover\\b"), "");
            }
        }
    }
}
if (window.attachEvent) window.attachEvent("onload", sfHover);*/

/*** load jquery ***/
(function($) {
/* Deroulant compte */
    function deroulCpte() {
        var ctCpte = $("#ctConnectCpte");
        var cpte = $("#teaserConnect");
        var deroulCpte = $("#deroulCpte");

        ctCpte.bind("mouseover", function() {
            cpte.addClass('select');
            deroulCpte.slideDown(200);
        });
        ctCpte.bind("mouseleave", function() {
            deroulCpte.slideUp(200);
            cpte.removeClass('select');
        });
    }

    /* Newsletter header */
    function openNews() {
        var linkNews = $("#news00");
        var blocNews = $("#ctNews00");

        linkNews.click(function() {
            blocNews.toggle();
        });
    }

    /* Hover sur les produits de la Home */
    function hoverPdts() {
        $('.casePdt00').bind("mouseover", function(el) {
            $($(this).children(".periodeOpco")).removeClass("vh");
            $($(this).children(".periodeOpco")).addClass("vv");
            $($(this).children(".acheter")).removeClass("vh");
            $($(this).children(".acheter")).addClass("vv");
        });
        $('.casePdt00').bind("mouseleave", function(el) {
            $($(this).children(".periodeOpco")).removeClass("vv");
            $($(this).children(".periodeOpco")).addClass("vh");
            $($(this).children(".acheter")).removeClass("vv");
            $($(this).children(".acheter")).addClass("vh");
        });
    }

    /* Hover sur la categorie du menu Top */
    function hoverMenuTop() {
        $('.menu00 li:first-chid').bind("mouseover", function(el) {
            $($(this).children(".ssMenu00")).css({ display: "block" });
        });
        $('.menu00 li:first-chid').bind("mouseleave", function(el) {
            $($(this).children(".ssMenu00")).css({ display: "none" });
        });
        $('.ssMenu00').bind("mouseover", function(el) {
            $($(this).parent()).addClass("actif");
        });
        $('.ssMenu00').bind("mouseleave", function(el) {
            $($(this).parent()).removeClass("actif");
        });
    }

    /* Slide banniere bottom de la Home */
    function formatText(index, panel) {
        return index + "";
    }
    
    $(document).ready(function() {
        if (document.getElementById('ctConnectCpte')) {
            deroulCpte();
        }
        if (document.getElementById('news00')) {
            openNews();
        }
        if (document.getElementById('ctPdtsHP')) {
            hoverPdts();
        }
        if (document.getElementById('menu')) {
            hoverMenuTop();
        }
        if (document.getElementById('jcarousel')) {
            $('.anythingSlider').anythingSlider({
                easing: "easeInOutExpo",        // Anything other than "linear" or "swing" requires the easing plugin
                autoPlay: false,                 // This turns off the entire FUNCTIONALY, not just if it starts running or not.
                delay: 3000,                    // How long between slide transitions in AutoPlay mode
                startStopped: false,            // If autoPlay is on, this can force it to start stopped
                animationTime: 600,             // How long the slide transition takes
                hashTags: true,                 // Should links change the hashtag in the URL?
                buildNavigation: true,          // If true, builds and list of anchor links to link to each slide
                pauseOnHover: true,             // If true, and autoPlay is enabled, the show will pause on hover
                //startText: "Go",             // Start text
                //stopText: "Stop",               // Stop text
                navigationFormatter: formatText       // Details at the top of the file on this use (advanced use)
            });

            $("#slide-jump").click(function() {
                $('.anythingSlider').anythingSlider(4);
            });
        }
        if(document.getElementById('header_recherche')){
            $('.header_recherche .list_criteres_affinage:not(".prix")').each(function(){
			    var dd_list = $(this).find('dd');
			    if(dd_list.length > 5){
				    var i = 0;
				    dd_list.each(function(){
					    if(i > 4){
						    $(this).hide();
					    }
					    i++;
				    });
				    $(this).append($('<a href="javascrip:void(0);" class="link_list_criteres_affinage" title="Tout afficher">Tout afficher</a>').bind('click',function(){
    					dd_list.each(function(){
    					    if(!$(this).is(':visible')) $(this).animate({"height": "toggle"});    					    
    					});
    					$(this).hide();
						$(this).closest('dl').find('.link_list_criteres_affinage_close').show();
    					return false;
				    })).append($('<a href="javascrip:void(0);" class="link_list_criteres_affinage_close" title="R&eacute;duire">R&eacute;duire</a>').bind('click',function(){
    					dd_list.each(function(){
    					    if(!$(this).is(':visible')) $(this).animate({"height": "toggle"});    					    
    					});
    					$(this).hide();
						$(this).closest('dl').find('.link_list_criteres_affinage').show();
						var current_dd_list = $(this).closest('dl').find('dd');
						i = 0;
						current_dd_list.each(function(){
					        if(i > 4){
						        $(this).animate({"height": "toggle"});
					        }
					        i++;
				        });
    					return false;
				    }));
				    $('.link_list_criteres_affinage_close').hide();
			    }
		    });
        }
    });
})(jQuery);