var imageTag = false;
var theSelection = false;
var clientPC = navigator.userAgent.toLowerCase();
var clientVer = parseInt(navigator.appVersion);
var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1));
var is_nav = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1) && (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1) && (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));
var is_moz = 0;
var is_win = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));
var is_mac = (clientPC.indexOf("mac")!=-1);

var txtId = 'txtarea';
function setTxtarea(txtareaId)	{
	txtId=txtareaId;
}

function lldccode(lldcopen, lldcclose, isOk) 	{
	var txtarea = get(txtId);

	if(txtarea.value=='Votre message')
		txtarea.value='';

	if(lldcopen=='[lien]' && !isOk)						lien();
	else if(lldcopen=='[image]' && !isOk)			insertImage();
	else if(lldcopen=='[aide]' && !isOk)				aide();
	else if(lldcopen=='[hide]' && !isOk)				hide();
	else if(lldcopen=='[de]' && !isOk)				de();
	else if(lldcopen=='[mod]' && !isOk)				mod();
	else if(lldcopen=='[stopFlood]' && !isOk)				stopFlood();
	else if(lldcopen=='[orthographe]' && !isOk)				orthographe();
	else if(lldcopen!='[]')	{
		if ((clientVer >= 4) && is_ie && is_win) 	{
			theSelection = document.selection.createRange().text;
			if (!theSelection) 	{
				txtarea.value += lldcopen + lldcclose;
				txtarea.focus();
				return;
			}
			document.selection.createRange().text = lldcopen + theSelection + lldcclose;
			txtarea.focus();
			return;
		}
		else if (txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0))	{
			mozWrap(txtarea, lldcopen, lldcclose);
			return;
		}
		else	{
			txtarea.value += lldcopen + lldcclose;
			txtarea.focus();
		}
	}
	txtarea.scrollTop=100000;
}

function mozWrap(txtarea, open, close)	{
	var selLength = txtarea.textLength;
	var selStart = txtarea.selectionStart;
	var selEnd = txtarea.selectionEnd;
	if (selEnd == 1 || selEnd == 2)
		selEnd = selLength;
	var s1 = (txtarea.value).substring(0,selStart);
	var s2 = (txtarea.value).substring(selStart, selEnd)
	var s3 = (txtarea.value).substring(selEnd, selLength);
	txtarea.value = s1 + open + s2 + close + s3;
	return;
}

function previsualiser()	{
	if(get('previsualisation'))	{
		get('previsualisation').style.display = 'block';
		get("previsualisation").innerHTML = '<div class="italique centrer">Pr&eacute;visualisation en cours...</div>';
		var texte = get(txtId).value;
		ajax('../membres/previsualisation_ajax.php', 'previsualisation', 'texte='+escape(texte));
	}
	else	{
		get('previsualisation'+txtId).style.display = 'block';
		get("previsualisation"+txtId).innerHTML = '<div class="italique centrer">Pr&eacute;visualisation en cours...</div>';
		var texte = get(txtId).value;
		ajax('../membres/previsualisation_ajax.php', 'previsualisation'+txtId, 'texte='+escape(texte));
	}
}

function lien()	{
	var lien = prompt('Quel lien souhaitez-vous ajouter ?', 'http://');
	if(lien!=null)	{
		if(lien.length>10) {
			var txtarea = get(txtId);
			var texte = prompt('Quel est le texte de votre lien ? (texte cliquable)', lien);
			if(texte.length==0)		texte = lien;
			lldccode('[lien='+lien+']'+texte, '[/lien]', true);
		}
		else
			alert('Ce lien est trop court pour etre vrai...');
	}
}
function insertImage()	{
	var lien = prompt('Quel est l\'adresse de l\'image que vous souhaitez ajouter ?', 'http://');
	if(lien!=null)	{
		if (lien.length>10) {
			var width = prompt('Largeur de l\'image (laissez ce champ vide pour que l\'image fasse sa taille normale)', '');
			var txtarea = get(txtId);
			if(width!=null && width!='')
				lldccode('[image='+width+']'+lien, '[/image]', true);
			else
				lldccode('[image]'+lien, '[/image]', true);
		}
		else
			alert('Ce lien est trop court pour etre vrai...');
	}
}
function aide()	{
	var texte = prompt('Quel est le texte sur lequel les joueurs doivent passer la souris pour activer la bulle d\'aide ?', '');
	var contenu = prompt('Quel est le contenu de la bulle d\'aide que vous souhaitez ajouter ?', '');
	var txtarea = get(txtId);

	if(texte!=null && contenu!=null)
		lldccode('[aide='+texte+']'+contenu, '[/aide]', true);
	else
		alert('Vous devez remplir les champs Texte et Contenu.');
}
function hide()	{
	var texte = prompt('Quel est le texte sur lequel les joueurs doivent cliquer pour voir le contenu ?', '');
	var contenu = prompt('Quel est le texte invisible ?', '');
	var txtarea = get(txtId);

	if(texte!=null && contenu!=null)
		lldccode('[hide='+texte+']'+contenu, '[/hide]', true);
	else
		alert('Vous devez remplir les champs Texte et Contenu.');
}
function de()	{
	var typeDe = prompt('Attention, un message contenant un lancer n\'est plus modifiable ni supprimable ! Saisissez le type a lancer (par exemple, 6, 12, 20, 100, etc.).', '');
	var txtarea = get(txtId);

	if(typeDe!=null && typeDe>1 && typeDe<=100)
		lldccode('[de'+typeDe+']', '', true);
}
function mod()	{
	var txtarea = get(txtId);
	if(pseudoAdmin)
		lldccode('[mod='+pseudoAdmin+']', '[/mod]', true);
	else
		lldccode('[mod]', '[/mod]', true);
}
function stopFlood()	{
	var txtarea = get(txtId);
	lldccode('[stopFlood]', '', true);
}
function orthographe()	{
	var txtarea = get(txtId);
	lldccode('[orthographe]', '', true);
}

image = Array(':nourriture', ':bois', ':or', ':pierre', ':madrens', ':toise', ':xp', ':flecheDroite', ':flecheGauche', ':flecheHaut', ':flecheBas', ':valide', ':invalide', ':croixNoire', ':croixRouge', ':meteo', ':moral', ':torture', ':encrier', ':aide', ':inventaire', ':fiole');
function addImage(i)	{
	lldccode(image[i], ':', true)
}

