//Fichier créer par Loîc Magnouat le 12/05/2007 pour ledw v1, réutiliser pour le site de la guilde UES sur le jeu online GTW (gatewars) & aussi sur gtw lui même :D
//Merci Loïc (ma petite louloute :P )
//maxou/bulton (co-créateur de ledw) sur ce fichier (n'est pas présent sur le fichier d'origine) à ajouter les function à propos de la couleur de la tablette des couleurs en bas de fichier

// Description : javascript permetttant, lors du clic sur l'image wikicode, l'insertion des tags dans le textarea

// INSERTION DES BALISES DANS LE TEXTAREA
var clientPC = navigator.userAgent.toLowerCase(); // On obtient les infos de l'user
var is_gecko = ((clientPC.indexOf('gecko')!=-1) && (clientPC.indexOf('spoofer')==-1)
&& (clientPC.indexOf('khtml') == -1) && (clientPC.indexOf('netscape/7.0')==-1));

function insertTags(tagOpen, tagClose, sampleText)
{
	var txtarea;
	if (document.editform) {
		txtarea = document.editform.wiki_text;
	} else {
		var areas = document.getElementsByTagName('textarea');
		txtarea = areas[0];
	}

	// IE
	if (document.selection  && !is_gecko) {
		var theSelection = document.selection.createRange().text;
		if (!theSelection) {
			theSelection=sampleText;
		}
		txtarea.focus();
		if (theSelection.charAt(theSelection.length - 1) == " ") {
			theSelection = theSelection.substring(0, theSelection.length - 1);
			document.selection.createRange().text = tagOpen + theSelection + tagClose + " ";
		} else {
			document.selection.createRange().text = tagOpen + theSelection + tagClose;
		}

		// Mozilla
	} else if(txtarea.selectionStart || txtarea.selectionStart == '0') {
		var replaced = false;
		var startPos = txtarea.selectionStart;
		var endPos = txtarea.selectionEnd;
		if (endPos-startPos) {
			replaced = true;
		}
		var scrollTop = txtarea.scrollTop;
		var myText = (txtarea.value).substring(startPos, endPos);
		if (!myText) {
			myText=sampleText;
		}
		var subst;
		if (myText.charAt(myText.length - 1) == " ") {
			subst = tagOpen + myText.substring(0, (myText.length - 1)) + tagClose + " ";
		} else {
			subst = tagOpen + myText + tagClose;
		}
		txtarea.value = txtarea.value.substring(0, startPos) + subst +
		txtarea.value.substring(endPos, txtarea.value.length);
		txtarea.focus();

		if (replaced) {
			var cPos = startPos+(tagOpen.length+myText.length+tagClose.length);
			txtarea.selectionStart = cPos;
			txtarea.selectionEnd = cPos;
		} else {
			txtarea.selectionStart = startPos+tagOpen.length;
			txtarea.selectionEnd = startPos+tagOpen.length+myText.length;
		}
		txtarea.scrollTop = scrollTop;

		// Tous les autres navigateurs
	}
	// Reposition du curseur si possible
	if (txtarea.createTextRange) {
		txtarea.caretPos = document.selection.createRange().duplicate();
	}
}
// INSERTION DES BALISES DANS LE TEXTAREA


// EDITION TAILLE TEXTAREA
var hauteur_init = 170;
function modif_hauteur(id_text, diff)
{
	var champ = document.getElementById(id_text);
	hauteur_init = hauteur_init + Number(diff);
	if (hauteur_init > 3000)
	hauteur_init = 3000;
	change = hauteur_init+"px";
	champ.style.height = change;
	return false;
}
// EDITION TAILLE TEXTAREA


// APERCU TEXTE SANS CHARGEMENT DE PAGE
function apercu(form,id)
{
	var texte = form.cont.value;
	var aff = form.type_aff.value;
	
	if(texte == 0)
	{
		alert('Le texte est vide !');
		document.getElementById(id).style.display = "none";
	}
	else
	{
		var xhr;
		if (window.XMLHttpRequest) xhr = new XMLHttpRequest();
		else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP');
		else
		{
			alert('Votre navigateur ne peut générer l\'aperçu. Erreur : objets XMLHttpRequest (JavaScript)');
			return;
		}

		xhr.open('POST','../bulton/bbcode_parse.php', true);
		xhr.onreadystatechange = function() {
			if(xhr.readyState < 4) {
				//montrer_load();
			}
			else
			{
				if(document.getElementById)
				{
					document.getElementById(id).innerHTML = xhr.responseText;
					document.getElementById(id).style.display = "block";
				}
				//masquer_load();
			}
		}
		xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded');
		var data = 'type='+aff+'&texte='+escape(texte);
		xhr.send(data);
	}
}
// APERCU TEXTE SANS CHARGEMENT DE PAGE

//Code de maxou/bulton
function verifTags(tag1, tag2, txt, val)
{
	if(val != "def") {insertTags(tag1, tag2, txt);}
}
