
/* SVN Property -- Do not edit! $Revision: 3228 $ */
// JavaScript Document

var var_width;
var var_height;
var curDrag;
var aLayer;
varinit = 90;

var_width = screen.width;
var_height = screen.height - varinit;

function setFocus(obj, prod) {
	if (obj.checked){
		if (DetectBrowserLeft() == 0) {//IE
			var x = getElementsByName_iefix('input', prod+'_serial1');
		} else {//FF
			var x = document.getElementsByName(prod+'_serial1');
		}
		x[0].focus();
	}
}

/**
 * Rechargement d'un pdf dans l'iframe des pdfs
 * Est appelée lorsque l'on clique sur un lien dans un pdf.
 */
function reload_pdf_div()
{
    var pdf_div = document.getElementById("doc_visu");
    pdf_div.innerHTML = "";
    var new_div_content = file("../ajax/visu_revues_refresh.php");
    pdf_div.innerHTML = new_div_content;
}

/**
 * Retourne la position d'un objet dans le navigateur.
 * i.e. distance par rapport au borg gauche et haut.
 * @param obj l'objet a évaluer
 * @returns array[int]
 */
function findPos(obj) 
{
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
}

/**
 * Retourne la taille en pixel affichable dans la fenêtre
 * @returns array[int] largeur et hauteur
 */
function get_browser_window_size() {
	var myWidth = 0, myHeight = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		//Non-IE
		myWidth = window.innerWidth;
		myHeight = window.innerHeight;
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		//IE 6+ in 'standards compliant mode'
		myWidth = document.documentElement.clientWidth;
		myHeight = document.documentElement.clientHeight;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		myWidth = document.body.clientWidth;
		myHeight = document.body.clientHeight;
	}
	return [myWidth, myHeight];
}

/**
 * Redimensionne l'iframe contenant le document pdf pour prendre toute la
 * hauteur d'affichage disponible sans scroller
 * Function lancée sur 'onload' and 'onreadystatechange' event de l'iframe
 */
function autoIframe(frameId, footer)
{
	frame = document.getElementById(frameId);

	// Position de l'iframe dans la fenêtre
	var frame_position = findPos(frame);
	
	// taille affichable dans la fenêtre du browser
	var window_size = get_browser_window_size();
	
	// taille courante du document
	var body = document.body,
		html = document.documentElement;
	var doc_height = Math.max( body.scrollHeight, body.offsetHeight, 
			html.clientHeight, html.scrollHeight, html.offsetHeight 
		);
	
	// taille du bas de page (tout ce qui est présent après l'iframe)
	var frame_bottom = document.getElementById("footer").offsetHeight;
	
	// valeur manuelle à ajouter au footer
	var man_value = 30;
	
	// calcul nouvelle taille de l'iframe
	if (footer) {
		var new_size = window_size[1] - (frame_position[1] + frame_bottom + man_value);
	} else {
		if (doc_height > window_size[1]) {
			var new_size = window_size[1] - frame_position[1];
		} else {
			var new_size = window_size[1] - (frame_position[1] + frame_bottom + man_value);
		}
	}
	
	
	// ne change pas la taille si elle devient inférieure a 500px
	if (new_size < 500) {
		return;
	}
	// modification de la taille de l'iframe
	document.getElementById(frameId).style.height = new_size+'px';
}

/*
 * Retourne la hauteur restante pour l'affichage d'un bloc dans la page.
 * c'est à dire la hauteur depuis ce bloc jusqu'a la limite basse du browser,
 * afin d'optimiser l'affichage des documents vers la hauteur.
 */
function getAvailableHeight (objectId) {
	var frame = document.getElementById(objectId);
	// Position de l'objet dans la fenêtre
	var frame_position = findPos(frame);
	
	// taille affichable dans la fenêtre du browser
	var window_size = get_browser_window_size();
	
	// taille courante du document
	var body = document.body,
		html = document.documentElement;
	var doc_height = Math.max( body.scrollHeight, body.offsetHeight, 
			html.clientHeight, html.scrollHeight, html.offsetHeight 
		);
	
	// taille du bas de page (tout ce qui est présent après l'iframe)
	var frame_bottom = document.getElementById("footer").offsetHeight;
	
	/*if (doc_height > window_size[1]) {
		var new_size = window_size[1] - frame_position[1];
	} else {
		var new_size = window_size[1] - (frame_position[1] + frame_bottom);
	}*/
	
	var new_size = window_size[1] - frame_position[1];
	// ne change pas la taille si elle devient inférieure a 500px
	if (new_size < 500) {
		return "500px";
	} else {
		return new_size+'px';
	}
}

function type_checked(id,language) {
	
	node = document.getElementById(id);
	lst = "";
	
	while (node.tagName != "TBODY") {
		node = node.parentNode;
	}

	check = false;

	lst = AnalyseCheck(node,language);
	
	return lst;

}

function AnalyseCheck(node,languages) {
	
	var lst="";
	
	tblanguage = languages.split("#");
	
	for (wichlanguage=0;wichlanguage<tblanguage.length;wichlanguage++) {
	
		thelanguage = tblanguage[wichlanguage];
	
		for (x=0;x<node.childNodes.length;x++)	{
	
			noeud = node.childNodes[x]; 
				
			if (noeud.tagName == "TR") {
					
				for (xx=0;xx<noeud.childNodes.length;xx++)	{
							
					if (noeud.childNodes[xx].tagName == "TD") {						
	
						noeudid = noeud.childNodes[xx].id;
									
						if (noeudid.indexOf("td_cat_") > -1) {
							
							wichcheck = noeudid.replace("td_cat_","");
		
							if ((wichcheck.indexOf(thelanguage) > -1) && (wichcheck.indexOf("all") < 0)) {
								
								val_checked = document.getElementById(wichcheck).checked;
		
								if (val_checked == true) {
					
									lst = lst + wichcheck + "#";
						
								}
		
							}
								
						}
	
					}
									
				}					
			}
				
		}

	}
	
	if (lst != "") {		
		lst = lst.substr(0,lst.length-1);
	}
	
	return lst;

}

function active(id,value,language) {

	id	= id + language;
	tbelement = value.split(",");
	
	for (x=0;x<tbelement.length;x++) {
	
		el = tbelement[x] + language;

		document.getElementById(el).checked=document.getElementById(id).checked;
					
	}
	
}

function act_desactive(id,obj,language) {

	value_checked = document.getElementById(id).checked;
	
	node = document.getElementById(id);
	
	while (node.tagName != "TBODY") {
		node = node.parentNode;
	}

	check = true;
	
	for (x=0;x<node.childNodes.length;x++)	{

		noeud = node.childNodes[x]; 
			
		if (noeud.tagName == "TR") {
				
			for (xx=0;xx<noeud.childNodes.length;xx++)	{
						
				if (noeud.childNodes[xx].tagName == "TD") {						

					noeudid = noeud.childNodes[xx].id;
								
					if (noeudid.indexOf("td_cat_") > -1) {
						
						wichcheck = noeudid.replace("td_cat_","");
	
						if ((wichcheck.indexOf(language) > -1) && (wichcheck.indexOf("all") < 0)) {
							
							val_checked = document.getElementById(wichcheck).checked;
	
							if (val_checked === false) {
				
								if (check === true) {
	
									check = false;
	
								}
				
							}
	
						}
							
					}

				}
								
			}					
		}
			
	}
	
	document.getElementById(obj + language).checked=check;

}

//............................................................................	
// Function permettant de montrer les div possedant les differentes sources
//   - value = variable possedant les differents layers possibles
//   - calcul = variable definissant si un calcul de position est necesssaire
//............................................................................	
function display(value,calcul) {
	
	tbelement 	= value.split(",");
		
	if (document.getElementById(tbelement[0]).style.display ==  "none") {
		//...............................................
		// Rend l'element selectionne visible
		// Rend invisible les autres elements (Voir Rajb)
		//...............................................		

		document.getElementById(tbelement[0]).style.display = "block";

		for (x=1;x<tbelement.length;x++) {
	
			document.getElementById(tbelement[x]).style.display= "none";
		
		}
					
	} else {
		//................................................................	
		// Reprise de la position correcte lors de la disparition du cadre
		//................................................................
		document.getElementById(tbelement[0]).style.display = "none";
		document.getElementById("encadrement").style.height = "0px";
	}
	
}

function display_div2(obj,value,condition) {

	if (value ==  condition) {
		
		document.getElementById(obj).style.display = "inline";
		document.getElementById(obj+'2').style.display = "inline";
							
	} else {
	
		document.getElementById(obj).style.display = "none";
		document.getElementById(obj+'2').style.display = "none";
		
	}

}

function display_div(obj,value,condition) {

	if (value ==  condition) {

		document.getElementById(obj).style.display = "inline";
							
	} else {
	
		document.getElementById(obj).style.display = "none";
		
	}
	
	if (obj == "operateur") {
				
		if (value != "OP") {
			
			var reg_et	= new RegExp("(\\[et\\] )", "g");
			var reg_ou	= new RegExp("(\\[ou\\] )", "g");
			var reg_etp	= new RegExp("(\\[et pas\\] )", "g");		

			document.recherche.fullTxt.value = document.recherche.fullTxt.value.replace(reg_et,"");
			document.recherche.fullTxt.value = document.recherche.fullTxt.value.replace(reg_ou,"");
			document.recherche.fullTxt.value = document.recherche.fullTxt.value.replace(reg_etp,"");		
			
		}
		
	}
		
}

function changeColor(obj,color,nb) {
	
	obj.style.backgroundColor=color;
	
}

 function insert(box,text,modebb)
 {
	 box = document.getElementById(box);
	 var str = box.value;
	 var msgstart = box.selectionStart,msgend = box.selectionEnd; // recuperation de la position du curseur
	 var balise = text.split("@");
	 var balisedebut = balise[0] + "@",balisefin = balise[1] + "@"; //recuperation de la balise de debut et de fin
	 if(typeof msgstart == "undefined"){ // cas IE
		 box.focus();
		 var caretPos = document.selection.createRange().duplicate();
		 if(!modebb) {
			 caretPos.text = text; // modification du texte selectionne
		 } else {
			 caretPos.text = balisedebut + caretPos.text + balisefin; // modification du texte selectionne avec les balises
		 }
	 } else { // cas autre
		 if(!modebb) {
		 	box.value = str.substring(0,msgstart) + text + str.substring(msgend,str.length); // ajout simple a partir de la position du curseur
		 } else {
			 box.value = str.substring(0,msgstart) + balisedebut + str.substring(msgstart,msgend) + balisefin + str.substring(msgend,str.length); // ici je recupere le texte selectionne et ajoute une balise au debut et a la fin
			 box.setSelectionRange(msgstart+text.length,msgstart+text.length); // repositionne le curseur dans la textbox
		 }
	 }

	var reg	= new RegExp("(  )", "g");	 
	box.value = box.value.replace(reg," ");
	box.focus();
 } 

function Ajoute (indice) {

	insert('fullTxt',indice,false);
	//document.recherche.fullTxt.value = document.recherche.fullTxt.value + indice;
}

function Retour(visible) {
	// log_connexion de l'action de cliquer sur le bouton 'Retour'
	log_connexion('function.js', 390, 'back');

	if (visible == "retour") {
		if (document.getElementById("cadreselection_revue_visu") ) {
			document.getElementById("cadreselection_revue_visu").style.display = "none";
			document.getElementById("encadrement").style.height = "0px";
		}
		document.getElementById("retourresult").style.display = "none";
		
		if (document.getElementById("cadre_doc") ) {
			ret = file("../ajax/unset_session.php?var=DbMarquage");
			document.getElementById("resultprevnext").style.display="none";
			document.getElementById("cadre_doc").style.display = "none";
			document.getElementById("Resultatsexpand").style.display = "block";
		}
	} else {
		if ((document.identifiant.dbase.value == 'strada_src_publ') && (document.identifiant.provenance.value !="") && (document.identifiant.provenance.value !="dbdoc") && (document.identifiant.provenance.value !="lastrevue") ) {
			VisualiserDoc(document.identifiant.provenance.value,document.identifiant.table.value,'',document.identifiant.format.value,document.identifiant.language.value,'') ;
		} else {
			if (document.getElementById("cadreselection_revue_visu")) {
				document.getElementById("cadreselection_revue_visu").style.display = "none";
				if (visible == "1") {
					if ((document.identifiant.table.value == 'comm') || (document.identifiant.table.value == 'form')) {
						document.getElementById("cadreselection_revue_visu").style.display = "block";					
						var language	= document.identifiant.language.value;
						var id		 	= document.identifiant.id.value;
						document.getElementById("retourverspage").innerHTML = "<a href=\"javascript:Retour('0')\"><img src=\"../images/rech.gif\" border=\"0\"></a>";
						DeployerWichRN('','doc_visu',id,language,0,'alpha','','')
					} else {
						document.getElementById("revue_expand").className = "dshow";		
						document.getElementById("cadreselection_revue").style.display = "block";		
					}
				} else {
					document.getElementById("encadrement").style.height = "0px";
				}
			}
			
			if (document.getElementById("cadre_doc") ) {
				ret = file("../ajax/unset_session.php?var=DbMarquage");
				document.getElementById("resultprevnext").style.display = "none";
				document.getElementById("cadre_doc").style.display = "none";
				document.getElementById("Resultatsexpand").style.display = "block";
				document.getElementById("retourresult").style.display = "none";
			}
		}	
	}	

	var printEnable = true;
	if (visible == "1") {
		printEnable = false
	}
	updateMyStradaToolbar(true, false, printEnable, false);
	
	subcontext = '';
		
}

function AfficheToolTip(doc_lng) {

	if (doc_lng == undefined || doc_lng == "") {
		var doc_lng	= document.identifiant.language.value;
	}
	var dbase 	= document.identifiant.dbase.value;
	var table 	= document.identifiant.table.value;
	var lang	= document.identifiant.language.value;
	var doc_file= document.identifiant.doc_file.value;

	/*
	 * Protection du signe +
	 */
	var exp 	= new RegExp("[\+]","g");
	doc_file	= doc_file.replace(exp,"caracplus");
			
	if(texte = file('../ajax/search_next_previous.php?dbase='+dbase+'&table='+table+'&language='+lang+'&doc_lng='+doc_lng+'&doc_file='+encodeURI(doc_file))) {
		
		result 	= texte.split("####");
		prevdoc	= result[0].split("=");
		nextdoc	= result[1].split("=");
		doc_prev = prevdoc[0];
		tit_prev = prevdoc[1];
		doc_next = nextdoc[0];
		tit_next = nextdoc[1];
		
		if (doc_prev == "") {
			document.getElementById("prev").style.visibility="hidden";
			document.getElementById("prev").style.display="none";
		} else {
			document.getElementById("prev").style.visibility="visible";
			document.getElementById("prev").style.display="inline";
		}
		
		if (doc_next == "") {
			document.getElementById("next").style.visibility="hidden";
			document.getElementById("next").style.display="none";
		} else {
			document.getElementById("next").style.visibility="visible";
			document.getElementById("next").style.display="inline";
		}

		document.getElementById("next").setAttribute("title",tit_next);
		document.getElementById("prev").setAttribute("title",tit_prev);

		document.identifiant.suivant.value=doc_next;
		document.identifiant.precedent.value=doc_prev;

	}

}

function VisualiserOtherDocument(div,mode) {
	
	var dbase 	= document.identifiant.dbase.value;
	var table 	= document.identifiant.table.value;
	var language= document.identifiant.language.value;
	
	var prod;
	if (table == 'biblio') {
		var doc_file = document.identifiant.doc_file.value;
		parts		= doc_file.split("/");
		prod 	= parts[5].toLowerCase();
		doclng		= language;
		dbase	= "strada_biblio";
	} else {
		prod = table;
	}

	dbSecureInactivityPeriods = 0;
	if (dbsecure = file('../ajax/dbsecure/dbsecure_visudoc.php?table=' + prod +'&language=' + language)) {

		if (dbsecure.indexOf("ok") == 0) {
			
			var tmparraytexte = dbsecure.split("####");
			if (!tmparraytexte[2] || tmparraytexte[2]!='jsq') {
				is_jsq = 0;
			} else {
				is_jsq = 1;
			}
			
			var doc_file;
			var user = tmparraytexte[1];			
			if (mode == "-") {
				document.identifiant.doc_file.value = document.identifiant.precedent.value;
			} else {
				document.identifiant.doc_file.value = document.identifiant.suivant.value;
			}
			
			doc_file	= document.identifiant.doc_file.value;
			if (doc_file.indexOf("fr/")>-1) {
				doclng = "fr";
			} else if (doc_file.indexOf("en/")>-1) {
				doclng = "en";			
			} else if (doc_file.indexOf("nl/")>-1) {
				doclng = "nl";
			} else {
				//Recherche de la langue du document
				fn  = document.identifiant.doc_file.value;
				fn	= fn.replace(exp,"caracplus");
				if(texte = file('../ajax/search_doclng.php?dbase='+dbase+'&table='+prod+'&language='+language+'&doc_file='+encodeURI(fn))) {
					doclng = texte;
				}				
			} 

			AfficheToolTip(doclng);

			var exp 	= new RegExp("[\+]","g");
			doc_file	= doc_file.replace(exp,"caracplus");

			if(texte = file('../ajax/search_titre.php?table='+prod+'&language='+language+'&id='+doc_file+'&doc_lng='+doclng))
				
			{
				document.getElementById("titre_doc").innerHTML = texte;
				
			}

			var param_suppl = '';
			if (subcontext != '') {
				param_suppl = "&subctx="+subcontext;
			}
			if(texte = file('../ajax/affiche_other_document.php?dbase='+dbase+'&table='+prod+'&language='+language+'&doc_file='+doc_file+'&height='+(screen.height-350) + '&user=' + user+'&doclng='+doclng+param_suppl)) {

				tbtexte = texte.split("####");
				document.getElementById(div).innerHTML = tbtexte[0];
				
				
				if ((tbtexte[1] != "") && (tbtexte[1] != undefined)) {
					document.getElementById("meta").innerHTML =  tbtexte[1];	
					document.getElementById("meta").style.className="dshow";
					document.getElementById("meta").style.display="inline";
				}	else {
					document.getElementById("meta").innerHTML = "";	
					document.getElementById("meta").style.className="dhidden";
				}
				
				if ((tbtexte[2] != "") && (tbtexte[2] != undefined)) {
					document.getElementById("affichagedocotherlanguage").innerHTML =  tbtexte[2];	
					document.getElementById("affichagedocotherlanguage").style.className="dshow";
					document.getElementById("affichagedocotherlanguage").style.display="inline";
					document.getElementById("affichagedocotherlanguage").style.visibility="visible";
				}	else {
					document.getElementById("affichagedocotherlanguage").innerHTML = "&nbsp;";	
					document.getElementById("affichagedocotherlanguage").style.className="dhidden";
				}
			}
			subcontext = '';
	
		} else {
		
			alert(dbsecure);
			
		}

	}
	
	updateMyStradaToolbar(false, true, true, true);
}

function makeDisable(){
/* Sous IE < 8, l'attribut OPTION.disabled n'est pas défini -> il faut utiliser SELECT.disabled et forcer la valeur
    var x=document.getElementById("U");
    x.disabled=true;
    var x=document.getElementById("OP");
    x.disabled=true;
    var x=document.getElementById("M");
    x.disabled=true;
*/
	var x=document.getElementById("T");   
	x.selected=true;
	
	display_div('operateur','T','OP');
	var x=document.getElementById("modelogic");
	x.disabled=true;
}

function makeEnable(){
/* Sous IE < 8, l'attribut OPTION.disabled n'est pas défini -> il faut utiliser SELECT.disabled et forcer la valeur
    var x=document.getElementById("U");
    x.disabled=false;
    var x=document.getElementById("OP");
    x.disabled=false;
    var x=document.getElementById("M");
    x.disabled=false;
*/
	var x=document.getElementById("modelogic");
	x.disabled=false;
}

function checkedsens() {
	
	if (document.recherche) {
		
		if (document.recherche.limite.checked) {
			
			makeDisable();
			
			document.recherche.Mot.checked=true;
			document.getElementById("Sens").style.display	= "none";
			document.getElementById("Sens1").style.display	= "none";
	
			if (document.getElementById("DatePertinence")) {
				
				document.getElementById("Pertinence").style.display	= "none";		
				document.getElementById("PertinenceGlobale").style.display	= "none";		
				document.getElementById("DatePertinence").checked	= true;
				
			}
			
		} else {
			
			makeEnable();
			
			if (document.recherche.fullTxt.value == "" && (document.recherche.jour_start.value != "" || document.recherche.mois_start.value != "" || document.recherche.annee_start.value != "")) {
				
				document.recherche.Mot.checked=true;
				document.getElementById("Sens").style.display	= "none";
				document.getElementById("Sens1").style.display	= "none";
				
				if (document.getElementById("DatePertinence")) {
					
					document.getElementById("Pertinence").style.display	= "none";		
					document.getElementById("PertinenceGlobale").style.display	= "none";		
					document.getElementById("DatePertinence").checked	= true;
					
				}
			} else {
				
				document.getElementById("Sens").style.display	= "inline";
				document.getElementById("Sens1").style.display	= "inline";
				
				if (document.getElementById("DatePertinence")) {
					document.getElementById("Pertinence").style.display	= "inline";		
					document.getElementById("PertinenceGlobale").style.display	= "inline";		
					
				}
				
			}
			
		}

	}
}

function AfficheOrNotAffiche(div) {
	
	if (document.getElementById(div).style.display == "block") {
		document.getElementById(div).style.display="none";
	} else {
		document.getElementById(div).style.display="block";
	}
}

function imprimer() {

	window.open("../includes/imprimer.php","imprimer","location=0,menubar=1,toolbar=1,status=0,scrollbars=1,resizable=1, width=820, height=600");
	
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_dragLayer(objName,x,hL,hT,hW,hH,toFront,dropBack,cU,cD,cL,cR,targL,targT,tol,dropJS,et,dragJS) { //v4.01
  //Copyright 1998 Macromedia, Inc. All rights reserved.
  var i,j,aLayer,retVal,curDrag=null,curLeft,curTop,IE=document.all,NS4=document.layers;
  var NS6=(!IE&&document.getElementById), NS=(NS4||NS6); if (!IE && !NS) return false;
  retVal = true; if(IE && event) event.returnValue = true;
	  if (MM_dragLayer.arguments.length > 1) {
	    curDrag = MM_findObj(objName); if (!curDrag) return false;
	    if (!document.allLayers) { document.allLayers = new Array();
	      with (document) if (NS4) { for (i=0; i<layers.length; i++) allLayers[i]=layers[i];
	        for (i=0; i<allLayers.length; i++) if (allLayers[i].document && allLayers[i].document.layers)
	          with (allLayers[i].document) for (j=0; j<layers.length; j++) allLayers[allLayers.length]=layers[j];
	      } else {
	        if (NS6) { var spns = getElementsByTagName("span"); var all = getElementsByTagName("div"); 
	          for (i=0;i<spns.length;i++) if (spns[i].style&&spns[i].style.position) allLayers[allLayers.length]=spns[i];}
	        for (i=0;i<all.length;i++) if (all[i].style&&all[i].style.position) allLayers[allLayers.length]=all[i]; 
	    } }

	    curDrag.MM_dragOk=true; curDrag.MM_targL=targL; curDrag.MM_targT=targT;
	    curDrag.MM_tol=Math.pow(tol,2); curDrag.MM_hLeft=hL; curDrag.MM_hTop=hT;
	    curDrag.MM_hWidth=hW; curDrag.MM_hHeight=hH; curDrag.MM_toFront=toFront;
	    curDrag.MM_dropBack=dropBack; curDrag.MM_dropJS=dropJS;
	    curDrag.MM_everyTime=et; curDrag.MM_dragJS=dragJS;
	    curDrag.MM_oldZ = (NS4)?curDrag.zIndex:curDrag.style.zIndex;
	    curLeft= (NS4)?curDrag.left:(NS6)?parseInt(curDrag.style.left):curDrag.style.pixelLeft; 
	    if (String(curLeft)=="NaN") curLeft=0; curDrag.MM_startL = curLeft;
	    curTop = (NS4)?curDrag.top:(NS6)?parseInt(curDrag.style.top):curDrag.style.pixelTop; 
	    if (String(curTop)=="NaN") curTop=0; curDrag.MM_startT = curTop;
	    curDrag.MM_bL=(curLeft<0)?0:0; curDrag.MM_bT=(curTop<0)?0:0;
	    curDrag.MM_bR=(cR>screen.width-60)?screen.width-curDrag.offsetWidth:screen.width-curDrag.offsetWidth; curDrag.MM_bB=(cD<0)?null:curTop+cD;
	    curDrag.MM_LEFTRIGHT=0; curDrag.MM_UPDOWN=0; curDrag.MM_SNAPPED=false; //use in your JS!
	    document.onmousedown = MM_dragLayer; document.onmouseup = MM_dragLayer;
	    if (NS) document.captureEvents(Event.MOUSEDOWN|Event.MOUSEUP);

	  } else {
	    var theEvent = ((NS)?objName.type:event.type);
	    if (theEvent == 'mousedown') {
	      var mouseX = (NS)?objName.pageX : event.clientX + document.body.scrollLeft;
	      var mouseY = (NS)?objName.pageY : event.clientY + document.body.scrollTop;
	      var maxDragZ=null; document.MM_maxZ = 0;
	      for (i=0; i<document.allLayers.length; i++) { aLayer = document.allLayers[i];
	        var aLayerZ = (NS4)?aLayer.zIndex:parseInt(aLayer.style.zIndex);
	        if (aLayerZ > document.MM_maxZ) document.MM_maxZ = aLayerZ;
	        var isVisible = (((NS4)?aLayer.visibility:aLayer.style.visibility).indexOf('hid') == -1);
	        if (aLayer.MM_dragOk != null && isVisible) with (aLayer) {
	          var parentL=0; var parentT=0;
	          if (NS6) { parentLayer = aLayer.parentNode;
	            while (parentLayer != null && parentLayer.style.position) {             
	              parentL += parseInt(parentLayer.offsetLeft); parentT += parseInt(parentLayer.offsetTop);
	              parentLayer = parentLayer.parentNode;
	          } } else if (IE) { parentLayer = aLayer.parentElement;       
	            while (parentLayer != null && parentLayer.style.position) {
	              parentL += parentLayer.offsetLeft; parentT += parentLayer.offsetTop;
	              parentLayer = parentLayer.parentElement; } }
	          var tmpX=mouseX-(((NS4)?pageX:((NS6)?parseInt(style.left):style.pixelLeft)+parentL)+MM_hLeft);
	          var tmpY=mouseY-(((NS4)?pageY:((NS6)?parseInt(style.top):style.pixelTop) +parentT)+MM_hTop);
	          if (String(tmpX)=="NaN") tmpX=0; if (String(tmpY)=="NaN") tmpY=0;
	          var tmpW = MM_hWidth;  if (tmpW <= 0) tmpW += ((NS4)?clip.width :offsetWidth);
	          var tmpH = MM_hHeight; if (tmpH <= 0) tmpH += ((NS4)?clip.height:offsetHeight);
	          
	          if ((0 <= tmpX && tmpX < tmpW && 0 <= tmpY && tmpY < tmpH) && (maxDragZ == null
	              || maxDragZ <= aLayerZ)) { curDrag = aLayer; maxDragZ = aLayerZ; } } }
	              /*curDrag = aLayer; 
	              maxDragZ = aLayerZ}};*/
	      if (curDrag) {
	        document.onmousemove = MM_dragLayer; if (NS4) document.captureEvents(Event.MOUSEMOVE);
	        curLeft = (NS4)?curDrag.left:(NS6)?parseInt(curDrag.style.left):curDrag.style.pixelLeft;
	        curTop = (NS4)?curDrag.top:(NS6)?parseInt(curDrag.style.top):curDrag.style.pixelTop;
	        if (String(curLeft)=="NaN") curLeft=0; if (String(curTop)=="NaN") curTop=0;
	        MM_oldX = mouseX - curLeft; MM_oldY = mouseY - curTop;
	        document.MM_curDrag = curDrag;  curDrag.MM_SNAPPED=false;
	        if(curDrag.MM_toFront) {
	          eval('curDrag.'+((NS4)?'':'style.')+'zIndex=document.MM_maxZ+1');
	          if (!curDrag.MM_dropBack) document.MM_maxZ++; }
	        retVal = false; if(!NS4&&!NS6) event.returnValue = false;
	    } } else if (theEvent == 'mousemove') {
	      if (document.MM_curDrag) with (document.MM_curDrag) {
	        var mouseX = (NS)?objName.pageX : event.clientX + document.body.scrollLeft;
	        var mouseY = (NS)?objName.pageY : event.clientY + document.body.scrollTop;
	        newLeft = mouseX-MM_oldX; newTop  = mouseY-MM_oldY;
	        if (MM_bL!=null) newLeft = Math.max(newLeft,MM_bL);
	        if (MM_bR!=null) newLeft = Math.min(newLeft,MM_bR);
	        if (MM_bT!=null) newTop  = Math.max(newTop ,MM_bT);
	        if (MM_bB!=null) newTop  = Math.min(newTop ,MM_bB);
	        MM_LEFTRIGHT = newLeft-MM_startL; MM_UPDOWN = newTop-MM_startT;
	        if (NS4) {left = newLeft; top = newTop;}
	        else if (NS6){style.left = newLeft  + "px"; style.top = newTop + "px";}
	        else {style.pixelLeft = newLeft; style.pixelTop = newTop;}
	        if (MM_dragJS) eval(MM_dragJS);
	        retVal = false; if(!NS) event.returnValue = false;
	    } } else if (theEvent == 'mouseup') {
		  curDrag = null;
		  aLayer = null;
	      document.onmousemove = null;
    	  document.onmousedown = null;
	      if (NS) document.releaseEvents(Event.MOUSEMOVE);
	      if (NS) document.captureEvents(Event.MOUSEDOWN); //for mac NS
	      if (document.MM_curDrag) with (document.MM_curDrag) {
			MM_SNAPPED = true; MM_LEFTRIGHT = MM_startL-MM_targL; MM_UPDOWN = MM_startT-MM_targT;
	        if (MM_everyTime || MM_SNAPPED) eval(MM_dropJS);
	        if(MM_dropBack) {if (NS4) zIndex = MM_oldZ; else style.zIndex = MM_oldZ;}
	        retVal = false; if(!NS) event.returnValue = false; }
			retVal = false; if(!NS) event.returnValue = false;
	      document.MM_curDrag = null;
	    }
	    if (NS) document.routeEvent(objName);
	  } return retVal;

}

function printHisto(isNotaire) {

    // Definit la zone a imprimer
    var zi = document.getElementById("renvoicodescomm").innerHTML;
    // Pas de lien dans la version imprimable
    var reg = new RegExp("<a (.*)href=.*>(.*)</a>", "gi");
    zi = zi.replace(reg, "$2");
    if (!isNotaire || isNotaire == 'undefined' || isNotaire == false) {
	    var Headers = '<!DOCTYPE HTML PUBLIC ><HTML style="background-color:white;"><HEAD><title>Strada&nbsp;lex</title>'
	    + '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">'
	    + '<link href="../css/strada.css" rel="stylesheet" type="text/css">'
	    + '<link href="../css/corps.css" rel="stylesheet" type="text/css">'
	    + '<link href="../css/codes/micromacro.css" rel="stylesheet" type="text/css">'
	    + '<link href="../css/codes/cals.css" rel="stylesheet" type="text/css">'
	    + '</HEAD><BODY style="background-color:white;">';//" onload="window.print();window.close();">';
    } else {
        var Headers = '<!DOCTYPE HTML PUBLIC ><HTML style="background-color:white;"><HEAD><title>Strada&nbsp;lex</title>'
            + '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">'
            + '<link href="../css/notaire/stradanot.css" rel="stylesheet" type="text/css">'
            + '<link href="../css/notaire/corpsnot.css" rel="stylesheet" type="text/css">'
            + '<link href="../css/codes/micromacro.css" rel="stylesheet" type="text/css">'
            + '<link href="../css/codes/cals.css" rel="stylesheet" type="text/css">'
            + '</HEAD><BODY style="background-color:white;">';//" onload="window.print();window.close();">';
    }
    var Footers = "</BODY></HTML>";
    // Ouvre une nouvelle fenetre
    var f = window.open("", "ZoneImpr", "height=913, width=710,location=0,menubar=1,toolbar=1,status=0,scrollbars=1,resizable=1, left=10, top=10");

    // Ajoute les Donnees
    f.document.write ("" + Headers + zi + Footers);
    f.document.close();
    if (f.document.getElementById('hSuiv')) {
    	f.document.getElementById('hSuiv').style.display='none';
    }
    if (f.document.getElementById('hPrec')) {
		f.document.getElementById('hPrec').style.display='none';
    }
    if (f.document.getElementById('hOrig')) {
		f.document.getElementById('hOrig').style.display='none';
    }
    if (f.document.getElementById('hDiff')) {
		f.document.getElementById('hDiff').style.display='none';
    }
    if (f.document.getElementById('hPrnt')) {
		f.document.getElementById('hPrnt').style.display='none';
    }
    return;

}

function ShowMeta (id,lang,dbase,table) {
	var theurl 	= document.location;
	theurl 		= theurl.toString();
	if (theurl.indexOf("/fr/")>0) {
		var language = "fr";
	} else  if (theurl.indexOf("/en/")>0) {
		var language = "en";
	} else {
		var language = "nl";
	}

	if (!dbase) {
		dbase = document.identifiant.dbase.value;
	}
	if (!table) {
		table = document.identifiant.table.value;
	}
	texte = file("../ajax/metadata2.php?language="+language+"&doc_lng="+lang+"&id="+id+"&dbase="+dbase+"&table="+table+"&ajax=1");
	txt = texte.split("####");
	if (txt[0] == 'ok') {
		if (!xFenster.instances['metadata']) {
			new xFenster("metadata", txt[2], null, 500, 150, 350, 150,
			   125, null, 0, 1, 0,
			   true, true, true, true, true, false, true,
			   null, null, null, null, null, null, null, null,
			   'xfCon', 'xfClient', 'xfTBar', 'xfTBarF', 'xfSBar', 'xfSBarF');		
			xFenster.instances.metadata.client.innerHTML 	= txt[1];
			xFenster.instances.metadata.show();
		} else {
			objFenster 					= xFenster.instances.metadata;
			valobjFenster				= "metadata";
			xFenster.instances.metadata.client.innerHTML 	= txt[1];
			xFenster.instances.metadata.show();
		}
		select_thumbnail('0');
	} else {
		alert('Erreur... pas de metadonnees.'+'\n'+txt);
	}
	return false;
}

function PayPerTime () {
	var theurl 	= document.location;
	theurl 		= theurl.toString();
	if (theurl.indexOf("/fr/")>0) {
		var language = "fr";
	} else 	if (theurl.indexOf("/en/")>0) {
		var language = "en";
	} else {
		var language = "nl";
	}
	
	texte = file("../ajax/paypertime.php?language="+language);
	array_texte = texte.split("####");
	if (!xFenster.instances['paypertime']) {
		new xFenster("paypertime", array_texte[1], null, 500, 150, 350, 150,
		   125, null, 0, 1, 0,
		   true, true, true, true, true, false, true,
		   null, null, null, null, null, null, null, null,
		   'xfCon', 'xfClient', 'xfTBar', 'xfTBarF', 'xfSBar', 'xfSBarF');		
		xFenster.instances.paypertime.client.innerHTML 	= array_texte[0];
		xFenster.instances.paypertime.show();
	} else {
		objFenster 					= xFenster.instances.paypertime;
		valobjFenster				= "paypertime";
		xFenster.instances.paypertime.client.innerHTML 	= array_texte[0];
		xFenster.instances.paypertime.show();
	}
}

function OrderPayPerTime (show,chk,notchecked) {
	if (show != 1) { 
		xFenster.instances.paypertime.hide();
		allowInteraction();
		//document.location.href = refresh_code;
		return false; 
	} else if (!chk || chk.checked == false) {
		alert(notchecked);
		return false; 
	}
	var theurl 	= document.location;
	theurl 		= theurl.toString();
	if (theurl.indexOf("/fr/")>0) {
		var language = "fr";
	} else 	if (theurl.indexOf("/en/")>0) {
		var language = "en";
	} else {
		var language = "nl";
	}
	
	document.getElementById("paypertime_visu").innerHTML = '';
	xFenster.instances.paypertime.hide();
	texte = file("../ajax/order_paypertime.php?language="+language);

	array_texte = texte.split("####");
	xFenster.instances.paypertime.hide();
	if (array_texte[0] == 'ko') {
		alert(array_texte[1]);
		allowInteraction();
		document.location.href = 'index.php';
	} else {
		alert(array_texte[1]);
		allowInteraction();
		document.location.href = refresh_code;
	}
}

function collapse (id) {
	var elt = document.getElementById(id);
	if (!elt) return;
	var img = document.getElementById(id+'_img');
	if (elt.style.display == 'block') {
		elt.style.display = 'none';
		if (img) img.src = '../../images/plus.jpg';
	} else {
		elt.style.display = 'block';
		if (img) img.src = '../../images/moins.jpg';
	}
}

function agrandir (elt) {
	if (elt.tagName != 'IMG') return;
	window.open(elt.src, 'Screenshot');//, 'width='+elt.width+';height='+elt.height);
}

function showInfoBulle (elt, div) {
	elt.style.cursor = 'pointer';
/*	var divElt = document.getElementById(div);
	if (!divElt) return;
	if (elt.tagName != 'IMG') return;
	var divContent = "<img src='"+elt.src+"' border=0 name='"+elt.name+"'>";
	divElt.innerHTML = divContent;
	divElt.style.visibility = 'visible';*/
}

function hideInfoBulle (div) {
/*	var divElt = document.getElementById(div);
	if (!divElt) return;
	divElt.style.visibility = 'hidden';
	divElt.innerHTML = '';*/
}

function ietruebody(){ // retourne le bon corps...
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
	}

/*
 * Gestion de de l'évennement du cochage de la checkbox table d'expansion dans le formulaire de recherche
 */
function no_exp_event()
{
	var cbx_noexp = document.recherche.no_exp.checked;
	var form = document.recherche;
	if (form) {
		for (var i=0;i<form.elements.length;i++) {
			var obj = form.elements[i];
			var oid = obj.id;
			if (obj.type == 'checkbox' && oid.indexOf('exp_') == 0) {
				if (cbx_noexp) {
					obj.checked = false;
					obj.disabled = "disabled";
				} else {
					obj.disabled = "";
				}
			}
		}
	}
}
