// b2t : Back to Top : Retour en haut
// 2006 Olivier GUERIN
//
var mybody_b2t=null;
var b2t=null;
var idT1_b2t=-1; // onscroll
var tempo1_b2t=1000; // ms
var idT2_b2t=-1; // hide
var tempo2_b2t=50; // ms
var incOpacity_b2t=0.05;

function setOpacity(obj,opacity)
{
	obj.style.opacity=obj.myOpacity=opacity>1.0?1:opacity;
	
	if (document.all)
		obj.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity="+(opacity*100)+")"
}

// Crée le bidule sur lequel on cliquera
function ajouteB2T()
{
	// 
	b2t = document.createElement("DIV");
	if (!mybody_b2t) mybody_b2t=document.getElementsByTagName("BODY").item(0);
	mybody_b2t.appendChild(b2t);
	b2t.setAttribute("id", "back2top");
	//b2t.className = "clB2T";
	b2t.style.position='absolute';
	b2t.style.paddingBottom='1ex';
	
	
	// texte
	b2t.innerHTML='<a href="#" title="Retour en haut de la page" style="padding:0; background:none"><img src="/images/clusif/b2t.png" width="40" height="40" alt="Retour en haut de la page" border="0"></a>';
	
	// pos
	//X
	var ref=document.getElementById('site');
	b2t.style.left=(ref.offsetWidth+ref.offsetLeft-b2t.offsetWidth).toString()+'px'; // adapter en f() des parent de 'ref' ?
	
	// display
	b2t.style.display='none';
	b2t.estVisible=false;
	
	//ONSCROLL	
	if (window.addEventListener) window.addEventListener('scroll', onscrollB2T, false);
	if (window.attachEvent) window.attachEvent('onscroll', onscrollB2T);
}
function onscrollB2T()
{
	if (idT1_b2t>-1) clearTimeout(idT1_b2t);
	if (0==document.body.scrollTop) return;
	idT1_b2t=setTimeout(showB2T, tempo1_b2t);
	if (b2t.estVisible) hideB2T();
	if (idT2_b2t>-1) {clearTimeout(idT2_b2t);idT2_b2t=-1;}
}
function showB2T()
{
	idT1_b2t=-1;
	//OPA
	if (idT2_b2t==-1)
	{
		setOpacity(b2t,0.0);
		idT2_b2t=setTimeout(chgOpacityB2T, tempo2_b2t);
	}
	//VIS
	b2t.style.display='block';
	b2t.estVisible=true;
	//POS
	b2t.mypixelTop=mybody_b2t.scrollTop+mybody_b2t.clientHeight-b2t.offsetHeight;
	b2t.style.top=(b2t.mypixelTop+'px');
}
function hideB2T()
{
	b2t.style.display='none';
	b2t.estVisible=false;
}
function chgOpacityB2T()
{
	idT2_b2t=-1;
	setOpacity(b2t, b2t.myOpacity+incOpacity_b2t);
	if (b2t.myOpacity<1.0)
	{
		idT2_b2t=setTimeout(chgOpacityB2T, tempo2_b2t);
	}
}

// ONLOAD
if (window.addEventListener)
{
	window.addEventListener('load', ajouteB2T, false);
}
if (window.attachEvent)
{
	window.attachEvent('onload', ajouteB2T);
}
