// LAYERS -------------------------------------------------------------------------------------------

// Execute layer_position + layer_style
function layer_global(){




}

// Affiche ou cache un layer en postion relative par rapport ŕ son layer parent
// fonctionne sous IE, Netscape, Mac 
// pos = direction ou s'affiche le layer
// G=gauche, H=haut, D=droite, B=Bas C=centré
// align = alignement
// H = Horizontal, V=certical
function layer_position(nom_layer, pos_x, pos_y, nom_layer_alt){


$_nom_layer = nom_layer.split("-");

if ($_nom_layer[1]){
nom_layer = $_nom_layer[0];
nom_layer_p = $_nom_layer[1];
}
else { nom_layer_p = nom_layer + "P"; }


//alert(nom_layer + " : " + nom_layer_p);

obj_layer = document.getElementById(nom_layer);
obj_layer_p = document.getElementById(nom_layer_p);

// Repositionnement selon navigateur
/* pour mac repositionnement layer pour IE5
si pos = undefined pas de detection de pos ???*/

var decal_nav_x = 0;
var decal_nav_y = 0;

if (navigator.appVersion.indexOf("Mac",0)>0) {
decal_nav_x = -1;
decal_nav_y = -1;}




//alert("left: "+pos_left+ " top:" +pos_top);	

if (pos_x!="" || pos_y!=""){

pos_left = layer_getLeftTop(obj_layer_p,"left");
pos_top = layer_getLeftTop(obj_layer_p);

decal_x = 0;
decal_y = 0;

// Position du menu ŕ gauche
if (isNaN(pos_x)){

decal_x = parseInt(pos_x.substr(1, (pos_x.length-1)));
if (isNaN(decal_x)){decal_x = 0;}

pos_x = pos_x.substr(0, 1);

     if (pos_x=="G"){ pos_left = pos_left - obj_layer.offsetWidth; }
else if (pos_x=="D"){ pos_left = pos_left + obj_layer_p.offsetWidth; }
else if (pos_x=="C"){pos_left = pos_left + ((obj_layer_p.offsetWidth/2)-(obj_layer.offsetWidth/2));}
else if (pos_x=="I"){ pos_left = pos_left + obj_layer_p.offsetWidth - obj_layer.offsetWidth; } 
}
else {pos_left = pos_left + pos_x;}


if (isNaN(pos_y)){

decal_y = parseInt(pos_y.substr(1, (pos_y.length-1)));
if (isNaN(decal_y)){decal_y = 0;}



pos_y = pos_y.substr(0, 1);

	 if (pos_y=="H"){ pos_top = pos_top - obj_layer.offsetHeight; }
else if (pos_y=="B"){ pos_top = pos_top + obj_layer_p.offsetHeight; }
else if (pos_y=="C"){pos_top = pos_top + ((obj_layer_p.offsetHeight/2)-(obj_layer.offsetHeight/2));}
else if (pos_y=="I"){ pos_top = pos_top + obj_layer_p.offsetHeight - obj_layer.offsetHeight; }
}
else {pos_top = pos_top + pos_y;}
			 



obj_layer.style.left = parseInt(pos_left) + decal_x + decal_nav_x;
obj_layer.style.top = parseInt(pos_top) + decal_y + decal_nav_y;


obj_layer.style.visibility = "visible";

}

else { obj_layer.style.visibility = "hidden"; }


}




function layer_getLeftTop(obj,coord) {

var pos = 0;
var div = 0;

if (coord=="left"){eval_pos = 'obj.offsetLeft';}
else {eval_pos = 'obj.offsetTop';}

while (obj && obj.tagName != 'BODY') {
if (obj.tagName=="DIV"){div++;}
if (div==2){break;}
pos += eval(eval_pos);
obj = obj.offsetParent;
}
 
return pos;
}


// nom layer - couleur fond - couleur font 
function layer_style(nom_layer, col_back, col_font, curseur){

//alert("nom_layer," +nom_layer+" col_back,"+col_back+ " col_font"+col_font);

obj_layer = document.getElementById(nom_layer);

// fond de couleur
if (col_back){
if (col_back.substr(0,1) == "#"){ obj_layer.style.background = col_back; }
else {obj_layer.style.background = "#FFFFFF";}
}

// couleur de font
if (col_font){
if (col_font.substr(0,1) == "#"){ obj_layer.style.color = col_font; }
else {obj_layer.style.color = "#000000";}
}

// curseur
if (curseur){
obj_layer.style.cursor = curseur;
}
/*
else {
obj_layer.style.cursor = 'default';
}
*/
/*
// Bordure
obj_layer.border = "medium solid green";
*/

}


function change_layer_class(id_obj,class_nom){

obj_layer = document.getElementById(id_obj);
obj_layer.className = class_nom;

}	

//layer_multi("reset","Lexp", 8);

function layer_cache_auto(){ layer_multi_affiche("masque","Lexp", 8); }

function layer_multi_affiche(fonction, nom_layer, num){

if (num){
$_nom_layer = new Array();
for (var i = 0; i < num; i++) { $_nom_layer[i] = nom_layer + (i+1);  }
}

else { $_nom_layer = nom_layer.split("-"); }


if (fonction == "masque"){
eval_layer = "obj_layer.style.visibility = 'hidden';";}
if (fonction == "affiche"){
eval_layer = "obj_layer.style.visibility = 'visible';";}
else if (fonction == "reset"){
eval_layer = "obj_layer.style.visibility = 'hidden';";
eval_layer += "obj_layer.style.left = 0;";
eval_layer += "obj_layer.style.top = 0;";
}

// cache tout les layers
if ($_nom_layer[0]){

for (var i = 0; i < $_nom_layer.length; i++) {
obj_layer = document.getElementById($_nom_layer[i]);
eval(eval_layer);
}

}

}


// DRAG ON DROP ---------------------------------------------------------------------------


var object;
var aff_pos = 1;

function init(){
 if(document.layers){
   document.captureEvents(Event.MOUSEDOWN|Event.MOUSEMOVE|
                          Event.MOUSEUP) }
 document.onmousedown=start;
 document.onmousemove=drag;
 document.onmouseup=drop;
}

function start(e) {
 if (document.layers) {
   object=document.layers[e.target.name]; 
   X=e.x;
   Y=e.y;
   return false;
 } else if (document.all) {
   object=event.srcElement.parentElement.style;
   X=event.offsetX;
   Y=event.offsetY;}
}

function drag(obj_nom,e){ 
if( object) {
  if (document.layers) { 
   object.moveTo((e.pageX-X),(e.pageY-Y));}
  else if (document.all) {
   object.pixelLeft=event.clientX-X+document.body.scrollLeft;
   object.pixelTop=event.clientY-Y+document.body.scrollTop;
   
   var val_posx = '';
   var val_posy = '';
   if (aff_pos == 1){ val_posx = object.pixelLeft;  val_posy = object.pixelTop;}

   return false;}
 }
}

function drop(e){

   object=null;  
}



