/**
* Cette fonction permet de vider le contenu d'une fenêtre.
* \param oDiv Objet javascript de la fenêtre à vider
*/
function clearBody(oDiv){
	oDiv.body.innerHTML="";
}

/**
* Cette fonction permet d'imprimer le contenu  d'une fenêtre.
* /param stext
*/
function printer(stext){
	if(stext==""){
		print(document);
	}else{
		if (document.all){
			parent.frames[stext].focus();
			window.print();
		}else{
			parent.frames[stext].print();
		}
	}
}
/**
* Cette fonction permet d'imprimer le contenu  d'un DIV via un pop-up.
* /param oDiv Objet DIV à imprimer
*/
function printerDiv(oDiv){
	var oWin=window.open("","printWindow",'screenX=0,left=0,screenY=0,top=0,width=800,height=500,location=no,menubar=no,scrollbars=yes,resizable=yes');
	var sUrl=window.location+"";
	var aUrl=sUrl.split("/");
	aUrl.shift();
	if (aUrl[aUrl.length-1]=="index.phtml") aUrl.pop();
	sUrl="http:/"+aUrl.join("/")+"/css/style.css";
	var scriptTag=document.createElement("link");
	scriptTag.setAttribute("href", sUrl);
	scriptTag.setAttribute("rel", "stylesheet");
	scriptTag.setAttribute("type", "text/css");
	oWin.focus();
	oWin.document.title="Veremap.pro - Impression";
	oWin.document.getElementsByTagName("head")[0].appendChild(scriptTag);
	oWin.document.body.innerHTML=oDiv.body.innerHTML;
	oWin.print();
	oWin.close();
}

/**
* fonction pour copier dans le presse papier.
* \param sCopie chaine à copier dans le presse-papier
*/
function copyToClipBoard(sCopie){
	if(document.all){
		var expression;
		var aExprReg=new Array("<IMG.[^<>]*>", "<TD><INPUT id=checkbox.[^<>]*></TD>", "<TD class=emptyCell.[^<>]*></TD>", "<A class=link.[^<>]*></A>","<TD></A></TD>");
		for (var i=0; i<5; i++){ 
			expression=new RegExp(aExprReg[i], "gi");
			if (aExprReg[i]=="<A class=link.[^<>]*></A>"){
				sCopie=sCopie.replace(expression,"</A>");
			}else{
				sCopie=sCopie.replace(expression,"");
			}
			window.clipboardData.setData('text',sCopie);
		} 
		alert("Copie correctement effectuée.");
	}else{
		alert("Cette fonction n'est disponible qu'avec le navigateur Internet Explorer.");
	}
}

/**
* Cette fonction permet de lancer l'export.
* \param sFormat Format de l'export (csv, xml, xls)
* \param sTypeContenu Type de contenu à exporter (info, formulaire)
*/
function Export(sFormat,sTypeContenu){
	if(sFormat==""){
		alert("Vous n'avez pas sélectionné le format d'export.");
	}else{
		ExportToFormat(sFormat, sTypeContenu);					
	}
}

/**
* fonction pour exporter du xml dans un autre format.
* /param sFormat Format d'export (xls, xml, csv)
* /param sTypeContenu Type de contenu (info , formulaire definissant le choix du xsl)
*/
function ExportToFormat(sFormat, sTypeContenu){	
	var sSessId=parent.map_toolbar.document.mapForm.PHPSESSID.value;
	if(confirm("Voulez vous exporter au format "+sFormat+" le contenu de la fenêtre ?")){
		sendPOSTRequest("export.phtml", "&sFormatName="+sFormat+"&sSessId="+sSessId+"&sTypeContenu="+sTypeContenu);	
	}
}

/**
* Cette fonction permet de récupérer la chaîne de caractères renvoyée par le serveur 
* après exécution d'un requête POST à travers un objet XMLHTTP.
* \param sText Chaîne de caractères renvoyée par le serveur.
*/
function response(sText){
	var aText=sText.split("@");
	var sAction=aText[0];
	var sUrl;	
	switch(sAction){
		case "bValider" :
			sUrl=aText[1];
			var oTime=new Date();
			var sName="info_"+oTime.getTime();
			if(document.all){
				var oWin=window.open('export.vhtml?sRapportUrl='+sUrl,sName,"top=50,left=50,width=800,height=600,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no");
			}else{
				var oWin=window.open(sUrl,sName,"top=50,left=50,width=800,height=600,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no");			
			}
			oWin.focus();
		break;
		case "error":
			sUrl=aText[1];
			alert("Export impossible avec cette fenêtre.");
		break;
		default:
			alert("Export impossible avec cette fenêtre.");
		break;
	}
}
