function convert(ch)
{
    spechar = new Array('à','â','ä','é','è','ê','ë','ù','û','ü');
	specharcode = new Array('%C3%A0','%C3%A2','%C3%A4','%C3%A9','%C3%A8','%C3%AA','%C3%AB','%C3%B9','%C3%BB','%C3%BC');
	for(i=0;i<10;i++)
	{	regchar = new RegExp(spechar[i],"gi");
		ch = ch.replace(regchar,specharcode[i]);
	}
	return ch;
}

function nettoyons(ch)
{	
    spechar = new Array('à','â','ä','é','è','ê','ë','ù','û','ü');
	specharcode = new Array('%C3%A0','%C3%A2','%C3%A4','%C3%A9','%C3%A8','%C3%AA','%C3%AB','%C3%B9','%C3%BB','%C3%BC');
	for(i=0;i<10;i++)
	{	regchar = new RegExp(specharcode[i],"gi");
		ch = ch.replace(regchar,spechar[i]);
	}
	return ch;
}

function remplacer(var1, var2)
{
	var1 = nettoyons(var1);

	// Variable indéfinie, pour tester l'existence sans provoquer d'erreur
	var indefini;

	// URL du script
	var url = '/jol/outils/jolcorrecteur/correcteur.php';

	// Chargement des motifs des expressions rationnelles
	var txtmoz1 = '<a href="' + url + '\\?mot=(' + var1 + '|' + convert(var1) + ')" target="jolcorrecteur" style="[^"]*">' + var1 + '</a>';
	var txtmoz2 = '<a href="' + url + '\\?mot=(' + var1 + '|' + convert(var1) + ')&amp;type=anglicisme" target="jolcorrecteur" style="[^"]*">' + var1 + '</a>';

	// Déclaration des expressions rationnelles
	reg1 = new RegExp(txtmoz1, "gi");
	reg2 = new RegExp(txtmoz2, "gi");

	// L'utilisateur est en normal ou en WYSIWYG ?
	if (document.getElementById('vB_Editor_001_mode') == 0)
	{
		// Mode normal
		// Chargement des contenus la zone d'édtiton et de la prévisualisation
		var message = '.'+parent.document.vbform.message.value+'.';
		var message2 = parent.document.getElementById('jolcorrecteur').innerHTML;

		// Remplacement dans la zone d'édition
		reg0 = new RegExp("(\\W{1})"+var1+"(\\W{1})", "gi");
		message = message.replace(reg0,'$1'+var2+"$2");

		// Remplacement dans la prévisualisation
		message2 = message2.replace(reg1, var2);
		message2 = message2.replace(reg2, var2);

		// Application efective des modifications
		parent.document.vbform.message.value = message.substring(1,message.length-1);
		parent.document.getElementById('jolcorrecteur').innerHTML = message2;
	}
	else
	{
		// Mode WYSIWYG

		// Chargement des contenus la zone d'édtiton et de la prévisualisation
		var msgVB = '.'+parent.document.getElementById('vB_Editor_001_textarea').value+'.';
		var msgCorr = parent.document.getElementById('jolcorrecteur').innerHTML;

		// Remplacement dans la zone d'édition
		reg0 = new RegExp("(\\W{1})"+var1+"(\\W{1})", "gi");
		msgVB = msgVB.replace(reg0,'$1'+var2+"$2");

		// Remplacement dans la prévisualisation
		msgCorr = msgCorr.replace(reg1, var2);
		msgCorr = msgCorr.replace(reg2, var2);

		// Application des modifications
        parent.document.getElementById('vB_Editor_001_textarea').value = msgVB.substring(1,msgVB.length-1);
		parent.document.getElementById('jolcorrecteur').innerHTML = msgCorr;

        var msgIFrame = '.'+parent.document.getElementById('vB_Editor_001_iframe').contentWindow.document.body.innerHTML+'.';
        msgIFrame = msgIFrame.replace(reg0,'$1'+var2+"$2");
        parent.document.getElementById('vB_Editor_001_iframe').contentWindow.document.body.innerHTML = msgIFrame.substring(1,msgIFrame.length-1);
	}
}
