function XMLhr() {
	var xhr_object = null;
	if(window.XMLHttpRequest) {
		xhr = new XMLHttpRequest();
	}
	else if(window.ActiveXObject) { 
		try {
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	else {
		alert("Vous ne pouvez pas afficher la shoutbox car votre navigateur web ne prend pas en compte les objets XMLHttpRequest()");
		xhr = false;
	}
	return xhr;
}
var xhr_object = XMLhr();

function refresh_div() {
	var method = "GET";
	var filename = "index.php?view=message";
	xhr_object.open(method, filename, true);
	xhr_object.onreadystatechange = function() {
		if(xhr_object.readyState == 4 && xhr_object.status == 200) {
			var tmp = xhr_object.responseText;
			document.getElementById("shoutbox_ajax").innerHTML = tmp;
			
			if(document.getElementById("shoutbox_ajax").innerHTML == false) {
				document.getElementById("shoutbox_ajax").innerHTML = "<ul class='topiclist forums'><li class='row'><div style='font-size: 11px; margin-left: 5px; padding-top: 2px; padding-bottom: 2px;'>Il n'y a aucun message</div></li></ul>";
			}
		}
	}
	xhr_object.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
	xhr_object.send(null);
	setTimeout("refresh_div()", 10000);
}

function write(url) {
	xhr_object.open("GET", url, false);
	xhr_object.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
	setTimeout("refresh_div()", 1000);
	xhr_object.send(null);
}

function submit() {
	var message_text_post = document.getElementById("message_text").value;
	var username = document.getElementById("user").value;
	if (document.getElementById("message_text").value == "") {
		alert("merci de marquer un message dans le champ de texte.");
	}
	else if(document.getElementById("user").value == "") {
		alert("merci de mettre un pseudo pour que l\'on puisse vous reconnaitres.");
	}
	else {
		document.getElementById("message_text").value = "";
		write("./index.php?message_get=" + encodeURIComponent(message_text_post) + "&user_get=" + encodeURIComponent(username));
	}
}

function keyup(touche) {
	if (touche == 13) {
		submit();
	}
}

function smilies_aff_shoutbox() {
	dE('smilies_aff_shoutbox');
	var smilies_dysplay_shoutbox = document.getElementById('smilies_aff_shoutbox');
				
	if (smilies_dysplay_shoutbox.style.display == 'block') {
		document.getElementById('smilies_list_shoutbox').value = 'Masquer les smileys';
	}
	else {
		document.getElementById('smilies_list_shoutbox').value = 'Afficher les smileys';
	}
}

function change_palette_shoutbox() {
	dE('colour_palette_shoutbox');
	e = document.getElementById('colour_palette_shoutbox');

	if (e.style.display == 'block') {
		document.getElementById('bbpalette_shoutbox').value = 'Masquer les couleurs de la police';
	}
	else {
		document.getElementById('bbpalette_shoutbox').value = 'Couleur de la police';
	}
}

function bbcode_tags(text1, text2) {
	var input = document.getElementById("message_text");
	input.focus();

	if(typeof document.selection != 'undefined') {
		var range = document.selection.createRange();
		var insText = range.text;
		range.text = text1 + insText + text2;
		range = document.selection.createRange();
		if (insText.length == 0)
		{
			range.move('character', -text2.length);
		}
		else
		{
			range.moveStart('character', text1.length + insText.length + text2.length);
		}
		range.select();
	}
	else if(typeof input.selectionStart != 'undefined') {
		var start = input.selectionStart;
		var end = input.selectionEnd;
		var insText = input.value.substring(start, end);
		input.value = input.value.substr(0, start) + text1 + insText + text2 + input.value.substr(end);
		var pos;
		if (insText.length == 0)
		{
			pos = start + text1.length;
		}
		else
		{
			pos = start + text1.length + insText.length + text2.length;
		}
		input.selectionStart = pos;
		input.selectionEnd = pos;
	}
	else {
		var pos;
		var re = new RegExp('^[0-9]{0,3}$');
		while(!re.test(pos))
		{
			pos = prompt("insertion (0.." + input.value.length + "):", "0");
		}
		if(pos > input.value.length)
		{
			pos = input.value.length;
		}
		var insText = prompt("Veuillez taper le texte");
		input.value = input.value.substr(0, pos) + text1 + insText + text2 + input.value.substr(pos);
	}
}

function colorPalette_shoutbox(dir, width, height)
{
	var r = 0, g = 0, b = 0;
	var numberList = new Array(6);
	var color = '';

	numberList[0] = '00';
	numberList[1] = '40';
	numberList[2] = '80';
	numberList[3] = 'BF';
	numberList[4] = 'FF';

	document.writeln('<table cellspacing="1" cellpadding="0" border="0">');

	for (r = 0; r < 5; r++)
	{
		if (dir == 'h')
		{
			document.writeln('<tr>');
		}

		for (g = 0; g < 5; g++)
		{
			if (dir == 'v')
			{
				document.writeln('<tr>');
			}
			
			for (b = 0; b < 5; b++)
			{
				color = String(numberList[r]) + String(numberList[g]) + String(numberList[b]);
				document.write('<td bgcolor="#' + color + '" style="width: ' + width + 'px; height: ' + height + 'px;">');
				document.write('<a href="#" onclick="bbcode_tags(\'[color=#' + color + ']\', \'[/color]\'); return false;"><img src="images/spacer.gif" width="' + width + '" height="' + height + '" alt="#' + color + '" title="#' + color + '" /></a>');
				document.writeln('</td>');
			}

			if (dir == 'v')
			{
				document.writeln('</tr>');
			}
		}

		if (dir == 'h')
		{
			document.writeln('</tr>');
		}
	}
	document.writeln('</table>');
}

function popup_shoutbox() {
	window.open('./index.php?view=info', 'information sur les messages postés', 'toolbar=0, menubar=0, location=0, scrollbars=1, resizable=1');
}
