function smiley(zone, ins)
{
	balise(zone, ins, '');
}

function balise(zone, bbdebut, bbfin)
{
	var input = document.getElementById(zone);
	input.focus();
	if(typeof document.selection != 'undefined') //IE
	{
		var range = document.selection.createRange();
		var insText = range.text;
		range.text = bbdebut + insText + bbfin;
		range = document.selection.createRange();
		if (insText.length == 0)
		{
			range.move('character', -bbfin.length);
		}
		else
		{
			range.moveStart('character', bbdebut.length + insText.length + bbfin.length);
		}
		range.select();
	}
	else if(typeof input.selectionStart != 'undefined') //Firefox
	{
		var start = input.selectionStart;
		var end = input.selectionEnd;
		var insText = input.value.substring(start, end);
		input.value = input.value.substr(0, start) + bbdebut + insText + bbfin + input.value.substr(end);
		var pos;
		if (insText.length == 0)
		{
			pos = start + bbdebut.length;
		}
		else
		{
			pos = start + bbdebut.length + insText.length + bbfin.length;
		}
		input.selectionStart = pos;
		input.selectionEnd = pos;
	}
	/* Autres navigateurs */
	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("");
		input.value = input.value.substr(0, pos) + bbdebut + insText + bbfin + input.value.substr(pos);
	}
	document.getElementById("no_code").selected="selected";
}


/*---*/


last_text="";
function getXhr(){
                                var xhr = null; 
				if(window.XMLHttpRequest) // Firefox et autres
				   xhr = new XMLHttpRequest(); 
				else if(window.ActiveXObject){ // Internet Explorer 
				   try {
			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
			            } catch (e) {
			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
			            }
				}
				else { // XMLHttpRequest non supporté par le navigateur 
				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
				   xhr = false; 
				} 
                                return xhr
			}


function go(){
				var xhr = getXhr()
				// On défini ce qu'on va faire quand on aura la réponse
				xhr.onreadystatechange = function(){
					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
					if(xhr.readyState == 4 && xhr.status == 200){
						msg=xhr.responseText;
						if(last_text!=document.getElementById("message").value)
							document.getElementById("displaybox").innerHTML=msg;
						last_text=document.getElementById("message").value;
					}
				}
				xhr.open("POST","/mods/preview/",true);
				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
				xhr.send("msg="+document.getElementById("message").value.replace(/<UP>/g, ''));
				setTimeout("checkstat()",250);
			}

function checkstat(){
	setTimeout("go()",2000);
}
checkstat();


function enableuploadbox()
{
	document.getElementById("uploadzone").style.display="block";
	document.getElementById("inneruploadzone").style.display="block";
	smiley('message', '<UP>');
}
function disableuploadbox()
{
	document.getElementById("uploadzone").style.display="none";
	document.getElementById("inneruploadzone").style.display="none";
}







var CS = {};
				CS.uploadback = function(){}
		
				CS.uploadback.callBack = function(msg){
				    document.getElementById("message").value=document.getElementById('message').value.replace('<UP>',msg);
				}

var CS2 = {};
CS2.exituploadmode=function(){}

				CS2.exituploadmode = function(){}
				CS2.exituploadmode.callBack = function(){
					disableuploadbox();
				}



function go2(){
				var xhr = getXhr()
				// On défini ce qu'on va faire quand on aura la réponse
				xhr.onreadystatechange = function(){
					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
					if(xhr.readyState == 4 && xhr.status == 200){
						msg=xhr.responseText;
						document.getElementById("progress").innerHTML=msg+"%";
document.getElementById("progressbar").style.width=msg+"%";
						if(msg=='100')	document.getElementById("msginfo").style.display="block";
					}
				}
				xhr.open("GET","/mods/check.php?keyFile="+document.getElementById("keyFile").value,true);
				xhr.send(null);
				setTimeout("checkstat2()",250);
			}

function checkstat2(){
	setTimeout("go2()",10);
}


