//-----------------------------------------------------------------------
//
//
//					ECRIRE DANS UN DIV
//
//
//-----------------------------------------------------------------------
function div_write(champs, texte){
	if(document.all) document.all[champs].innerHTML = texte;
	if(document.layers){
		document.layers[champs].document.open();
		document.layers[champs].document.write(texte);
		document.layers[champs].document.close();
		
	}
	if(document.getElementById)
	{
		   document.getElementById(champs).innerHTML = texte;
	}
	
	
}

//-----------------------------------------------------------------------
//
//
//					BOITE DE CONFIRMATION
//
//
//-----------------------------------------------------------------------

		function boite_confirm(texte, url_location)
		{
			
			if(confirm(texte))
			{
				document.location.href = url_location;	
			}
		}
		
		
//-----------------------------------------------------------------------
//
//
//					ADAPTE LE TEXTAREA AU CONTENU
//
//
//-----------------------------------------------------------------------	
function textareaSize(zoneTexte) {
if (zoneTexte) {
nbrLignes=2;longueurDeLigne=2; // Taille minimal de la zone de texte.
nbrLignesMax=18;longueurDeLigneMax=9; // Taille maximale de la zone de texte.
lesLignes=escape(zoneTexte.value).split("%0D%0A");
if (lesLignes) {nbrLignes=lesLignes.length;}
if (nbrLignes>document.body.clientHeight/nbrLignesMax) {nbrLignes=document.body.clientHeight/nbrLignesMax;}
if (lesLignes) {
for(n=0; n<(lesLignes.length); n++) {
if (longueurDeLigne<unescape(lesLignes[n]).length) {longueurDeLigne=unescape(lesLignes[n]).length;}

if (longueurDeLigne>document.body.clientWidth/longueurDeLigneMax)
{
longueurDeLigne=document.body.clientWidth/longueurDeLigneMax;
nbrLignes+=unescape(lesLignes[n]).length/(document.body.clientWidth/longueurDeLigneMax);
}
}
}
else {longueurDeLigne=zoneTexte.value.length}
if (nbrLignes>document.body.clientHeight/nbrLignesMax) {nbrLignes=document.body.clientHeight/nbrLignesMax;}
zoneTexte.cols=(longueurDeLigne+1); // Charge le nombre de colonnes utile, plus une colonne pour la clarté
zoneTexte.rows=(nbrLignes+1); // Charge le nombre de lignes utile, plus une ligne pour la clarté
}
}
		

//-----------------------------------------------------------------------
//
//
//					DONNE LA POSITION DU CURSEUR
//
//
//-----------------------------------------------------------------------

nav = navigator.appName;
ie = document.all;
ns = document.layers;
fi = document.getElementById && !document.all;
if(!ie && !ns && !fi){
	alert("navigateur "+nav+" incompatible !");	
}
if(!ie){
	document.captureEvents(Event.MOUSEMOVE); 	
}
x=0;
y=0;
document.onmousemove = get_mouse;

function get_mouse(e){
	if(ie){
		x = event.x;
		y = event.y;
		window.status = x;
	}else{
		x = e.pageX;
		y = e.pageY;
	}	
	
	//bubble = document.getElementById("infobulle");
	//bubble.style.left = x + cursor_padding;
	//bubble.style.top = y + cursor_padding;
	
	
}



//-----------------------------------------------------------------------
//
//
//					AFFICHE/CACHE L'INFO BULLE
//
//
//-----------------------------------------------------------------------

function info_bulle(contenu)
{

var sty = document.getElementById("info_bulle").style;

var hauteur_scroll = document.body.scrollTop;
var hauteur_fenetre = document.body.clientHeight;

var position = hauteur_scroll+hauteur_fenetre;

if(contenu != "")  sty.visibility = "visible";

if(position<(y+170))
{
sty.top = y-150;
}
else
{
sty.top = y+15;
}
sty.left = x+15;
sty.zIndex = 100;
div_write("info_bulle", contenu);
//alert("coucou");
}

function cacher_info_bulle()
{
	div_write("info_bulle", "");
	document.getElementById("info_bulle").style.visibility = "hidden";
	
	
}


//-----------------------------------------------------------------------
//
//
//					OUVRE LA POPUP D'UPLOAD
//
//
//-----------------------------------------------------------------------


function popup_upload(champs, nameform)
{
window.open('../upload.php?champs='+champs+'&nameform='+nameform+'&bbCode=non','popup', config='height=300, width=600, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no');
}

function popup_upload_bbCode(champs, nameform)
{
window.open('../upload.php?champs='+champs+'&nameform='+nameform+'&bbCode=oui','popup', config='height=300, width=600, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no');
}

function popup_calendar(champs, nameform)
{
window.open('mini_calendrier.php?champ='+champs+'&nameform='+nameform, 'popup', config='height=250, width=250, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no');
}


//-----------------------------------------------------------------------
//
//
//					BARRE D'OUTILS DU TEXTEREA ENRICHI
//
//
//-----------------------------------------------------------------------


var isMozilla = (navigator.userAgent.toLowerCase().indexOf('gecko')!=-1) ? true : false;
var regexp = new RegExp("[\r]","gi");

function add_balise(selec, formname, inputname)
{
	var myLink = null;
	if(selec == "link")
	{
		myLink = prompt("Indiquez l'adresse de la page ou du site", "http://");
		
	}
	if(selec == "youtube")
	{
		myLink = prompt("Indiquez l'adresse de la page YOUTUBE", "http://");
		
	}
	
	if (isMozilla) 
	{
	// Si on est sur Mozilla

		oField = document.forms[formname].elements[inputname];

		objectValue = oField.value;

		deb = oField.selectionStart;
		fin = oField.selectionEnd;

		objectValueDeb = objectValue.substring( 0 , oField.selectionStart );
		objectValueFin = objectValue.substring( oField.selectionEnd , oField.textLength );
		objectSelected = objectValue.substring( oField.selectionStart ,oField.selectionEnd );

	//	alert("Debut:'"+objectValueDeb+"' ("+deb+")\nFin:'"+objectValueFin+"' ("+fin+")\n\nSelectionné:'"+objectSelected+"'("+(fin-deb)+")");
			
		if(selec != "link" && selec != "youtube") oField.value = objectValueDeb + "[" + selec + "]" + objectSelected + "[/" + selec + "]" + objectValueFin;
		else
		{
			oField.value = objectValueDeb + "[" + selec + "="+myLink+"] " + objectSelected + "[/" + selec + "]" + objectValueFin;
		}
		
		oField.selectionStart = strlen(objectValueDeb);
		
		if(selec != "link" && selec != "youtube") oField.selectionEnd = strlen(objectValueDeb + "[" + selec + "]" + objectSelected + "[/" + selec + "]");
		else oField.selectionEnd = strlen(objectValueDeb + "[" + selec + "="+myLink+"]" + objectSelected + "[/" + selec + "]");
		
		oField.focus();
		oField.setSelectionRange(
			objectValueDeb.length + selec.length + 2,
			objectValueDeb.length + selec.length + 2);
	}
	else
	{
	// Si on est sur IE
		
		oField = document.forms[formname].elements[inputname];
		var str = document.selection.createRange().text;

		if (str.length>0)
		{
		// Si on a selectionné du texte
			var sel = document.selection.createRange();
			
			if(selec != "link" && selec != "youtube") sel.text = "[" + selec + "]" + str + "[/" + selec + "]";
			else sel.text = "[" + selec + "="+myLink+"]" + str + "[/" + selec + "]";
			
			sel.collapse();
			sel.select();
		}
		else
		{
			oField.focus(oField.caretPos);
		//	alert(oField.caretPos+"\n"+oField.value.length+"\n")
			oField.focus(oField.value.length);
			oField.caretPos = document.selection.createRange().duplicate();
			
			var bidon = "%~%";
			var orig = oField.value;
			oField.caretPos.text = bidon;
			var i = oField.value.search(bidon);
			
			if(selec != "link" && selec != "youtube") oField.value = orig.substr(0,i) + "[" + selec + "][/" + selec + "]" + orig.substr(i, oField.value.length);
			else oField.value = orig.substr(0,i) + "[" + selec + "="+myLink+"][/" + selec + "]" + orig.substr(i, oField.value.length);
			var r = 0;
			for(n = 0; n < i; n++)
			{if(regexp.test(oField.value.substr(n,2)) == true){r++;}};
			pos = i + 2 + selec.length - r;
			//placer(document.forms['news'].elements['newst'], pos);
			var r = oField.createTextRange();
			r.moveStart('character', pos);
			r.collapse();
			r.select();

		}
	}
}


	

function view()
{
	
	
objetXHR = creationXHR();
var parametres = "texte="+coderContenu("texte");
objetXHR.open("post", "create_apercu_texte_enrichi.php", true);


objetXHR.onreadystatechange = actualiserPage;

objetXHR.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

objetXHR.send(parametres);

}


function view_titre()
{
	
	
objetXHR = creationXHR();
var parametres = "titre="+coderContenu("titre");
objetXHR.open("post", "create_apercu_titre.php", true);


objetXHR.onreadystatechange = actualiserPage2;

objetXHR.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

objetXHR.send(parametres);

}


function create_tools(myTextarea, myForm)
{
	
	//popup_upload_bbCode(champs, nameform)
	
	var barre = "<div id=\"tools_textarea\" name\"tools_textarea\" width=\"100%\" align=\"center\"><table width=\"100%\"><tr><td align=\"center\"><a href=\"javascript:add_balise('left', '"+myForm+"', '"+myTextarea+"');\" title=\"Aligner le texte &agrave; gauche\"><img src=\"text_align_left.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('center', '"+myForm+"', '"+myTextarea+"');\" title=\"Aligner le texte au centre\"><img src=\"text_align_center.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('right', '"+myForm+"', '"+myTextarea+"');\" title=\"Aligner le texte &agrave; droite\"><img src=\"text_align_right.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('justify', '"+myForm+"', '"+myTextarea+"');\" title=\" &quot;Justifier&quot; le texte \"><img src=\"text_align_justify.png\" width=\"16\" border=\"0\" /></a>&nbsp;&nbsp;&nbsp;<a href=\"javascript:add_balise('bold', '"+myForm+"', '"+myTextarea+"');\" title=\"Mettre le texte en gras\"><img src=\"text_bold.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('italic', '"+myForm+"', '"+myTextarea+"');\" title=\"Mettre le texte en italique\"><img src=\"text_italic.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('underline', '"+myForm+"', '"+myTextarea+"');\" title=\"Souligner le texte\"><img src=\"text_underline.png\" width=\"16\" border=\"0\" /></a>&nbsp;&nbsp;&nbsp;<a href=\"javascript:add_balise('link', '"+myForm+"', '"+myTextarea+"');\" title=\"Ins&eacute;rer un lien\"><img src=\"www_page.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('youtube', '"+myForm+"', '"+myTextarea+"');\" title=\"Ajouter une vid&eacute;o Youtube\"><img src=\"movies.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:popup_upload_bbCode('"+myTextarea+"', '"+myForm+"');\" title=\"Ajouter une image\"><img src=\"image_add.png\" width=\"16\" border=\"0\" /></a> <a href=\"javascript:add_balise('module', '"+myForm+"', '"+myTextarea+"');\" title=\"A venir...\"><img src=\"installer_box_disable.png\" width=\"16\" border=\"0\" /></a></td><td align=\"right\"><a href=\"javascript:view();\" class=\"liendiscret\">Aper\347u du texte</a></td><td width=\"30\"><img src=\"magnifier.png\"></td></tr></table></div>";
	document.write(barre);	
}


//-----------------------------------------------------------------------
//
//
//					IMPLEMENTATION AJAX
//
//
//-----------------------------------------------------------------------

function creationXHR() {
	
var result=null;
try{
	result=new XMLHttpRequest();
}
catch(Error){
	try{
		result = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(Error)
	{
		try{
			result = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch(Error)
		{
			result=null;
		}
	}
}
return result;
	
}




function coderContenu(id){
	var contenu = document.getElementById(id).value;
	return encodeURIComponent(contenu);
}



function actualiserPage(){
//alert("ok0 - "+objetXHR.readyState);
if(objetXHR.readyState == 4)
{
	//alert("ok1 - "+objetXHR.readyState);
	if(objetXHR.status == 200)
	{
		//alert("ok2");
		var resultat = objetXHR.responseText;
		document.getElementById("texte_apercu").innerHTML=resultat;
		
	}
}
}

function actualiserPage2(){
//alert("ok0 - "+objetXHR.readyState);
if(objetXHR.readyState == 4)
{
	//alert("ok1 - "+objetXHR.readyState);
	if(objetXHR.status == 200)
	{
		//alert("ok2");
		var resultat = objetXHR.responseText;
		document.getElementById("titre_apercu").innerHTML=resultat;
		
	}
}
}
