
var Mouse=new Object;
var Drag={OffX:0, OffY:0, Layer:false};
var currDrag='';

var PAC = "";
document.onmousemove=function(NSEvent){
	var m = eval(PAC+"Mouse");
	m.X = (navigator.appName.substring(0,3) == "Net") ? NSEvent.pageX : event.clientX+document.body.scrollLeft;
	m.Y = (navigator.appName.substring(0,3) == "Net") ? NSEvent.pageY : event.clientY+document.body.scrollTop;
};

document.onmouseup = function(NSEvent) {
	var d = eval(PAC+"Drag");
	var c = eval(PAC+"currDrag");
	d.Layer=false;
	c='';
};

document.onkeydown = function(NSEvent) {
	var d = eval(PAC+"Drag");
	var c = eval(PAC+"currDrag");
	d.Layer=false;
	c='';
};


function getElementsByClass(searchClass, node, tag) { 
    var classElements = new Array(); 
    if ( node == null ) 
        node = document; 
    if ( tag == null ) 
        tag = '*'; 
    var els = node.getElementsByTagName(tag); 
    var elsLen = els.length; 
    var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)"); 
    for (i = 0, j = 0; i < elsLen; i++) { 
        if ( pattern.test(els[i].className) ) { 
            classElements[j] = els[i]; 
            j++; 
        } 
    } 
    return classElements; 
}
function _show(d){
	document.getElementById(d).style.display="block";
	document.getElementById(d).style.visibility="visible";			
}
function _hide(d){
	document.getElementById(d).style.display="none";
	document.getElementById(d).style.visibility="hidden";	
}


function hideLayerByClass(classe){
	var divs = getElementsByClass(classe);
	for(i=0;i<divs.length;i++){
		_hide(divs[i].id);
	}
}


function show_layer(layer) {
	if (dd.elements[layer]) {
		if (dd.elements[layer].visible) {
			dd.elements[layer].hide();
			document.getElementById(layer).style.display="none";
			document.getElementById(layer).style.visibility="hidden";
		}else{
			dd.elements[layer].show();
			document.getElementById(layer).style.display="block";
			document.getElementById(layer).style.visibility="visible";
			dd.elements[layer].maximizeZ();
		}
	}else{
		if (document.getElementById(layer).style.visibility!="visible") {
			document.getElementById(layer).style.visibility="visible";
			document.getElementById(layer).style.display="block";
			gotoTop(document.getElementById(layer));
		}else{
			hide_layer(layer);
		}
	}
}

function hide_layer(layer) {
	if (dd.elements[layer]) {
		if (dd.elements[layer].visible) {
			dd.elements[layer].hide();
			document.getElementById(layer).style.display="none";
			document.getElementById(layer).style.visibility="hidden";
		}else{
			dd.elements[layer].show();
			document.getElementById(layer).style.display="block";
			document.getElementById(layer).style.visibility="visible";
		}
	}else{
		if (document.getElementById(layer).style.visibility=="hidden") {
			show_layer(layer);
		}else{
			document.getElementById(layer).style.visibility="hidden";
			document.getElementById(layer).style.display="none";
		}
	}
}





var currZindex = 100;
var zindexCalques = [];
var zindexCalques_i = 0;
var currZindexInitialise=false;

function gotoTop(layer) {
	if (!currZindexInitialise) {
		if (zindexCalques_i>0){
			for(i=0; i<zindexCalques_i; i++) if (zindexCalques[i]>currZindex) currZindex=zindexCalques[i]+1;
		}else{ 
			currZindex++;
		}
		currZindexInitialise=true;
	}else{
		currZindex++;	
	}
	layer.style.zIndex=currZindex;

}



function gotoTopByName(layer){
	var divs = document.getElementsByTagName("div");
	for(var iii=0;iii<divs.length;iii++){
		if (divs[iii].style.zIndex && divs[iii].style.zIndex>1000000000) {
			divs[iii].style.zIndex=divs[iii].style.zIndex-1000000000;
		}
		if (divs[iii].style.zIndex && divs[iii].style.zIndex>10000000) {
			divs[iii].style.zIndex=divs[iii].style.zIndex-10000000;
		}
		if(divs[iii].style.zIndex && divs[iii].style.zIndex>100000){
			divs[iii].style.zIndex=divs[iii].style.zIndex-100000;
		}
		if(divs[iii].style.zIndex && divs[iii].style.zIndex>1000){
			divs[iii].style.zIndex=divs[iii].style.zIndex-1000;
		}
	}
	
	try{
		dd.elements[layer].maximizeZ();
	}catch(e){
		var maxZ = 10;
	
		var divs = document.getElementsByTagName("div");
		for(var iii=0;iii<divs.length;iii++){
			currZIndex=0;
			try{currZIndex=dd.elements[divs[iii].id].z;
			}catch(e){currZIndex=divs[iii].style.zIndex;}
			if (currZIndex>maxZ) {maxZ = currZIndex;}
		}
		divs = document.getElementsByTagName("span");
		for(var iii=0; iii<divs.length; iii++){
			currZIndex=0;
			try{currZIndex=dd.elements[divs[iii].id].z;
			}catch(e){currZIndex=divs[iii].style.zIndex;}
			if (currZIndex>maxZ) {maxZ = currZIndex;}
		}
		
		document.getElementById(layer).style.zIndex = maxZ+1;
	}
}






var IB=new Object;

var xOffset=0;
var yOffset=20;

function showAide(){
	if (typeof(demTOID)!="undefined"){
		self.clearTimeout(demTOID);
	}
	var finalPosX=Mouse.X-xOffset;
	if (finalPosX<0) {finalPosX=0;}
	if (finalPosX>(screen.availWidth-345)) {finalPosX=screen.availWidth-400;}

	document.getElementById("div_aide").style.top=(Mouse.Y+yOffset)+"px";
    document.getElementById("div_aide").style.left=(finalPosX)+"px";

	showAideLight();
	demTOID = self.setTimeout("hideAide()",20000);
	gotoTopByName("div_aide");
}

function showAideSticky(){
	var finalPosX=Mouse.X-xOffset;
	if (finalPosX<0) {finalPosX=0;}
	if (finalPosX>(screen.availWidth-345)) {finalPosX=screen.availWidth-345;}

	document.getElementById("div_aide_sticky").style.top=(Mouse.Y+yOffset)+"px";
    document.getElementById("div_aide_sticky").style.left=(finalPosX)+"px";
	showAideLightSticky();
	gotoTopByName("div_aide_sticky");
}

function showAideLight(){
	document.getElementById("div_aide").style.visibility="visible";
	document.getElementById("div_aide").style.display="block";
}
function showAideLightSticky(){
	document.getElementById("div_aide_sticky").style.visibility="visible";
	document.getElementById("div_aide_sticky").style.display="block";
}

function hideAide(){
	document.getElementById("div_aide").style.visibility="hidden";
	document.getElementById("div_aide").style.display="none";
}
function hideAideSticky(){
	document.getElementById("div_aide_sticky").style.visibility="hidden";
	document.getElementById("div_aide_sticky").style.display="none";
}


function aide(texte){
	document.getElementById("aideTexte").innerHTML=texte;
}
function aideComplet(texte){
	document.getElementById("aideTexteComplet").innerHTML=texte;
}

function aideSticky(texte){
	document.getElementById("aideTexteSticky").innerHTML=texte;
}
function aideCompletSticky(texte){
	document.getElementById("aideTexteCompletSticky").innerHTML=texte;
}
