/**************************************************************************************************************************************************************************************************/
/* CONSTANTE */
/**************************************************************************************************************************************************************************************************/
	window.CONST_BGCOLORFILTER = '#000';
	window.CONST_OPACITY = 0.75;
	window.CONST_PATH_IMG = '/commun/contenu/image/bibliosite/prospection/site/';
	
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* VARIABLES GLOBALES */
/**************************************************************************************************************************************************************************************************/
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Evenements */
/**************************************************************************************************************************************************************************************************/
window.addListener('load', function initAll(){
	initPng(); // Gestion des PNG sous ie < 7 (  a jouter une class PNG au image à traiter )
	initRounded(); // Ajoute dynamiquement des coins  à des boites avec une class ROUNDED
	initOnglets(); // Ajoute des évenements et initialise  des ul/li avec la class ONGLETS ( contenu onglet = id + '_content' )  
	initAccordion(); // Init des accordions mootools
});

/**************************************************************************************************************************************************************************************************/
/* Menu :: page contenu */
/**************************************************************************************************************************************************************************************************/
function montre(id) {
var d = document.getElementById(id);
	for (var i = 1; i<=10; i++) {
		if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
	}
if (d) {d.style.display='block';}
}

/**************************************************************************************************************************************************************************************************/
/**************************************************************************************************************************************************************************************************/
/* Scintillement des backgrounds sous IE */
/**************************************************************************************************************************************************************************************************/
try{document.execCommand('BackgroundImageCache', false, true);}catch(e){};
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Fonctions */
/**************************************************************************************************************************************************************************************************/
function initPng(){
	if ( !window.IElt7 ){return;}

	var tsElementsIMG = $$('img.png');
	for(var i=0, x=tsElementsIMG.length;i<x;i++){
		tsElementsIMG[i].setStyles({
			'filter': 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="'+tsElementsIMG[i].getProperty('src')+'",sizingMethod="crop")',
			'background': 'none'
		});
		tsElementsIMG[i].setProperty('src', window.CONST_PATH_IMG + 'bg-blank.gif');
		tsElementsIMG[i].setStyle('visibility', 'visible');
	}
	
}
function initRounded(){
	var TsElementsRounded = $ES('div.rounded', document.body);

	if( TsElementsRounded.length > 0){
		var coins_H = new Element('div', {'class': 'coins'});
		new Element('div', {'class': 'coin coinHG'}).inject(coins_H);
		new Element('div', {'class': 'coin coinHD'}).inject(coins_H);
		var coins_B = new Element('div', {'class': 'coins'});
		new Element('div', {'class': 'coin coinBG'}).inject(coins_B);
		new Element('div', {'class': 'coin coinBD'}).inject(coins_B);
	}

	for(var i=0, x=TsElementsRounded.length; i<x; i++){
		coins_H.clone().injectTop(TsElementsRounded[i]);
		coins_B.clone().inject(TsElementsRounded[i]);
	}
}
function initOnglets(){
	var TsTabElementsUL = $$('ul.onglets');
	for(var j=0, y=TsTabElementsUL.length;j<y;j++){
		var TsTabElementsA = $ES('a', $(TsTabElementsUL[j]));
		for(var i=0, x=TsTabElementsA.length;i<x;i++){
			if( TsTabElementsA[i].hasClass('selected') ){
				if( $(TsTabElementsA[i].getProperty('id')+'_content') ){
					$(TsTabElementsA[i].getProperty('id')+'_content').setStyle('display', 'block');
				}
			}else{
				if( $(TsTabElementsA[i].getProperty('id')+'_content') ){
					$(TsTabElementsA[i].getProperty('id')+'_content').setStyle('display', 'none');
				}
			}
			TsTabElementsA[i].addListener('click', toggleOnglets);
		}
	}
}
function toggleOnglets(TsEvent){
	var event = new Event(TsEvent);

	var el_a = $(event.target).getParentTag('a');	
	var elParent = el_a.getParentTag('ul');

	if( elParent ){
		var TsTabElementsA = $ES('a.selected', elParent);
		for(var i=0, x=TsTabElementsA.length;i<x;i++){
			if( $(TsTabElementsA[i].getProperty('id')+'_content') ){$(TsTabElementsA[i].getProperty('id')+'_content').setStyle('display', 'none');}
			$(TsTabElementsA[i]).removeClass('selected');
		}
	}

	if( el_a ){
		el_a.addClass('selected');
		if( $(el_a.getProperty('id')+'_content') ){
			$(el_a.getProperty('id')+'_content').setStyle('visibility', 'hidden');
			$(el_a.getProperty('id')+'_content').setStyle('display', 'block');
			new Fx.Style(el_a.getProperty('id')+'_content', 'opacity', {duration:500}).start(0,1);
			calculFamille();
		}
	}

	event.stopPropagation();
	event.stop();
}
function initAccordion(){
	var TstabElementDIV_SLIDE = $$('div.slide');
	for(var i=0, x=TstabElementDIV_SLIDE.length;i<x;i++){
		var accordion = new Accordion('h3.toggler', 'div.element', {
			opacity: false,
			onActive: function(toggler, element){
				toggler.addClass('slide_on');
			},
			onBackground: function(toggler, element){
				toggler.removeClass('slide_on');
			}},
			$(TstabElementDIV_SLIDE[i])
		);
	}
}
function nothing(TsEvent){
	var event = new Event(TsEvent);
	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');

	window.addEvent('resize', $SetFilterPopup); // Evenements pour gestion du filtre et de la popup
}
function $HideFilter(){
	if( !$('filter') ){return;}
	
	$('filter').setStyle('display', 'none');
	if( window.IElt7 ){$GestionSelect('visible');}
}
function $SetFilter(){
	if( !$('filter') ){return;}

	$('filter').setStyles({'width': 0, 'height': 0});

	var TsLargeur = window.getScrollWidth();
	var TsHauteur = window.getScrollHeight();

    if( $('global') ){
        if( $('global').getSize().scrollSize.x  >  TsLargeur){TsLargeur = $('global').getSize().scrollSize.x;}
        if( $('global').getSize().scrollSize.y >  TsHauteur){TsHauteur = $('global').getSize().scrollSize.y;}
    }

	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, 'background':TsBgColorFilter, 'opacity': window.CONST_OPACITY, 'zIndex': 9997, 'display': 'none'});
	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){
	try{
	var event = new Event(TsEvent);

	var tsElementsHTML = $$('html');
	for(var i=0,x=tsElementsHTML.length;i<x;i++){tsElementsHTML[i].setStyle('overflow', 'hidden');}

	$ShowFilter();
	if( !$('popup') ){$CreatePopup();}else{$HidePopup();}
	var TsUrl = $UrlRamdom(TsUrl);
	var myAjax = new Ajax(TsUrl, {method: 'get', onRequest:$CreateLoader, onComplete:$SetPopupComplete, onFailure:$HideAll}).request();
	
	event.stopPropagation();
	event.stop();
	}catch(e){}
}
function $HidePopup(){
	if( !$('popup') ){return;}

	$('popup').setHTML('');
	$('popup').setStyle('display', 'none');
}
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)+(tsEnd.length));
	}else{
		$('popup').innerHTML = tsContent;
	}
	TsEvalScripts($('popup').innerHTML);

	var tsElementA = $ES('.close', 'popup');
	for(var i=0, x=tsElementA.length;i<x;i++){tsElementA[i].addEvent('click', $HideAll);}
	$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 $SetPopup(){
	if( !$('popup') ){return;}

	$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) - $(TsElement).getSize().scrollSize.y.toInt() ) / 2;
	TsBlockTop = parseInt(TsScrollTop + TsBlockTop);
	if( TsBlockTop < 0){TsBlockTop = 0;}

	var TsBlockLeft = ( parseInt(window.TsDocRef.clientWidth) - $(TsElement).getSize().scrollSize.x.toInt() ) / 2;
	TsBlockLeft = parseInt(TsScrollLeft + TsBlockLeft);
	if( TsBlockLeft < 0){TsBlockLeft = 0;}
*/
	var TsScrollTop     = parseInt(window.TsDocRef.scrollTop);
	var TsScrollLeft    = parseInt(window.TsDocRef.scrollLeft);
	var TsClientHeight  = parseInt(window.TsDocRef.clientHeight);
	var TsClientWidth   = parseInt(window.TsDocRef.clientWidth);
	var TsElementHeight = parseInt($(TsElement).offsetHeight);
	var TsElementWidth  = parseInt($(TsElement).offsetWidth);
	var TsBlockTop      = Math.round( TsScrollTop + (TsClientHeight - TsElementHeight) / 2)+'px';
	var TsBlockLeft     = Math.round( TsScrollLeft + (TsClientWidth - TsElementWidth) / 2)+'px';

	if( $(TsElement) ){$(TsElement).setStyles({'top':TsBlockTop, 'left':TsBlockLeft, 'visibility':'visible'})}
}
function $CreatePopup(){
	var TsPopup = new Element('div').inject(document.body);
	TsPopup.setStyles({'position':'absolute', 'top':0, 'left':0, 'zIndex': 9999, '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, 'zIndex': 9998, 'display':'none', 'overflow':'hidden'});
	TsPopup.setProperty('id', 'popup_loader');
}
function $CreateLoader(){
	if( !$('popup_loader') ){
		$CreatePopupLoader();
	}else{
		$SetPosition('popup_loader');
		return;
	}

	var TsLoader = new Element('div');
	TsLoader.setStyles({'position':'relative', 'width':250, 'overflow':'hidden', 'textAlign':'center', 'background': '#fff', 'padding-top':10, 'padding-bottom':10});
	TsLoader.setProperty('id', 'loader');

	var TsImage = new Element('img').inject(TsLoader);
	TsImage.setProperty('src', window.CONST_PATH_IMG + 'img-loader.gif');
	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();

	var tsElementsHTML = $$('html');
	for(var i=0, x=tsElementsHTML.length;i<x;i++){tsElementsHTML[i].setStyle('overflow', 'auto');}

	event.stopPropagation();
	event.stop();
}
function $UrlRamdom(TsUrl){
	if( TsUrl.contains('?') ){
		return TsUrl + '&nocache='+Math.random();
	}else{
		return TsUrl + '?nocache='+Math.random();
	}
}
function reviews(TsEvent){
	var event = new Event(TsEvent);

	if( $('review_content_0') && $('form_review') ){
		if( $('review_content_0').getStyle('display') == 'none'){
			$('review_content_0').setStyle('display','block');
			$('form_review').setStyle('display','none');
		}else{
			$('review_content_0').setStyle('display','none');
			$('form_review').setStyle('display','block');
		}
	}
	event.stopPropagation();
	event.stop();
}
/**************************************************************************************************************************************************************************************************/

/**************************************************************************************************************************************************************************************************/
/* Addon MOOTOOLS */
/**************************************************************************************************************************************************************************************************/
if(Element){
	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);
		}
	});
}
/**************************************************************************************************************************************************************************************************/

sfHover = function() {
	var sfEls = document.getElementById("menuTop").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"), "");
		}
	}
	var sfEls = document.getElementById("esp_client").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);
	
/**************************************************************************************************************************************************************************************************/
	/* AJOUT QB */	
/**************************************************************************************************************************************************************************************************/


	
