var timer=0;
var ptag=String.fromCharCode(5,6,7);
function  previsualisation() {
t=document.formulaire.message.value 
t=code_to_html(t)
if (document.getElementById) document.getElementById("prev").innerHTML=t
if (document.formulaire.auto.checked) timer=setTimeout(previsualisation,1)
<!-- le "1" est le temps que met le texte à s'afficher, "1" : le texte s'affichera en même temps que l'on écrit (en s) -->
}
function automatique() {
if (document.formulaire.auto.checked) previsualisation() <!-- si on a cocher la case d'aperçu automatique -->
}
function code_to_html(t) {
t=nl2khol(t)
// balise Gras 
t=deblaie(/(\<\/gras\>)/g,t)
t=remplace_tag(/\<gras\>(.+)\<\/gras\>/g,'<strong>$1</strong>',t) 
t=remblaie(t)

// balise Italic
t=deblaie(/(\<\/italique\>)/g,t)
t=remplace_tag(/\<italique\>(.+)\<\/italic\>/g,'<em>$1</em>',t) 
t=remblaie(t)

// balise barré
t=deblaie(/(\<\/barre\>)/g,t)
t=remplace_tag(/\<barre\>(.+)\<\/barre\>/g,'<s>$1</s>',t) 
t=remblaie(t)

// balise souligné
t=deblaie(/(\<\/souligne\>)/g,t)
t=remplace_tag(/\<souligne\>(.+)\<\/souligné\>/g,'<u>$1</u>',t) 
t=remblaie(t)


// balise bleu
t=deblaie(/(\<\/bleu\>)/g,t)
t=remplace_tag(/\<bleu\>(.+)\<\/bleu\>/g,'<font color=\"#383F7C\">$1</font>',t) 
t=remblaie(t)
// balise rouge
t=deblaie(/(\<\/rouge\>)/g,t)
t=remplace_tag(/\<rouge\>(.+)\<\/rouge\>/g,'<font color=\"#FD0404\">$1</font>',t) 
t=remblaie(t)
// balise vert
t=deblaie(/(\<\/vert\>)/g,t)
t=remplace_tag(/\<vert\>(.+)\<\/vert\>/g,'<font color=\"#19AB49\">$1</font>',t) 
t=remblaie(t)
// balise blanc
t=deblaie(/(\<\/blanc\>)/g,t)
t=remplace_tag(/\<blanc\>(.+)\<\/blanc\>/g,'<font color=\"#ffffff\">$1</font>',t) 
t=remblaie(t)
// balise noir
t=deblaie(/(\<\/noir\>)/g,t)
t=remplace_tag(/\<noir\>(.+)\<\/noir\>/g,'<font color=\"#000000\">$1</font>',t) 
t=remblaie(t)
// balise orange
t=deblaie(/(\<\/orange\>)/g,t)
t=remplace_tag(/\<orange\>(.+)\<\/orange\>/g,'<font color=\"#EFB310\">$1</font>',t) 
t=remblaie(t)
// balise jaune
t=deblaie(/(\<\/jaune\>)/g,t)
t=remplace_tag(/\<jaune\>(.+)\<\/jaune\>/g,'<font color=\"#ECEF10\">$1</font>',t) 
t=remblaie(t)
// balise violet
t=deblaie(/(\<\/violet\>)/g,t)
t=remplace_tag(/\<violet\>(.+)\<\/violet\>/g,'<font color=\"#F80CDF\">$1</font>',t) 
t=remblaie(t)


// balise gauche
t=deblaie(/(\<\/gauche\>)/g,t)
t=remplace_tag(/\<gauche\>(.+)\<\/gauche\>/g,'<div align=\"left\">$1</div>',t) 
t=remblaie(t)
// balise centré
t=deblaie(/(\<\/centre\>)/g,t)
t=remplace_tag(/\<centre\>(.+)\<\/centre\>/g,'<center>$1</center>',t) 
t=remblaie(t)
// balise droite
t=deblaie(/(\<\/droite\>)/g,t)
t=remplace_tag(/\<droite\>(.+)\<\/droite\>/g,'<div align=\"right\">$1</div>',t) 
t=remblaie(t)


// balise code
t=deblaie(/(\<\/code\>)/g,t)
t=remplace_tag(/\<code\>(.+)\<\/code\>/g,'Code: <div class="code"><code><pre>$1</div></code></pre>',t) 
t=remblaie(t)


// balise liste
t=deblaie(/(\<\/liste\>)/g,t)
t=remplace_tag(/\<liste\>(.+)\<\/liste\>/g,'<ul>$1</ul>',t) 
t=remblaie(t)
// balise puce
t=deblaie(/(\<\/puce\>)/g,t)
t=remplace_tag(/\<puce\>(.+)\<\/puce\>/g,'<li>$1</li>',t) 
t=remblaie(t)

// balise taille 1
t=deblaie(/(\<\/ttgrand\>)/g,t)
t=remplace_tag(/\<ttgrand\>(.+)\<\/ttgrand\>/g,'<font style=\"font-size:  6px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)
// balise taille 2
t=deblaie(/(\<\/tgrand\>)/g,t)
t=remplace_tag(/\<tgrand\>(.+)\<\/tgrand\>/g,'<font style=\"font-size:  8px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)
// balise taille 3
t=deblaie(/(\<\/grand\>)/g,t)
t=remplace_tag(/\<grand=3\>(.+)\<\/grand\>/g,'<font style=\"font-size:  10px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)
// balise taille 4
t=deblaie(/(\<\/moyen\>)/g,t)
t=remplace_tag(/\<moyen\>(.+)\<\/moyen\>/g,'<font style=\"font-size:  12px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)
// balise taille 5
t=deblaie(/(\<\/petit\>)/g,t)
t=remplace_tag(/\<petit\>(.+)\<\/petit\>/g,'<font style=\"font-size:  14px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)
// balise taille 6
t=deblaie(/(\<\/tpetit\>)/g,t)
t=remplace_tag(/\<tpetit\>(.+)\<\/petit\>/g,'<font style=\"font-size:  16px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)
// balise taille 7
t=deblaie(/(\<\/ttpetit\>)/g,t)
t=remplace_tag(/\<ttpetit\>(.+)\<\/ttpetit\>/g,'<font style=\"font-size:  18px;font-family: Verdana, Arial, Helvetica, sans-serif;\">$1</font>',t) 
t=remblaie(t)

// balise image
t=deblaie(/(\<\/image\>)/g,t)
t=remplace_tag(/\<image\>(.+)\<\/image\>/g,'<img src="$1" />',t)
t=remblaie(t)

// balise Citation
t=deblaie(/(\<\/citation\>)/g,t)
t=remplace_tag(/\<citation=(<\s\S>*?)\>(.+)\<\/citation\>/g,'<div style="text-align: center; font-weight: bold;">Citation $1 :</div><div style="border: 1px solid #000000; width: 80%; margin:auto; font-family: Verdana, \'Trebuchet MS\', Tahoma, \'Times New Roman\', Times, serif; text-align: left; font-size: 11px;" align="center">$2</div>',t) 
t=remblaie(t)
// balise Citation
t=deblaie(/(\<\/citation\>)/g,t)
t=remplace_tag(/\<citation>(.+)\<\/citation\>/g,'<div style="text-align: center; font-weight: bold;">Citation :</div><div style="border: 1px solid #000000; width: 80%; margin:auto; font-family: Verdana, \'Trebuchet MS\', Tahoma, \'Times New Roman\', Times, serif; text-align: left; font-size: 11px;" align="center">$1</div>',t) 
t=remblaie(t)

// balise lien
t=deblaie(/(\<\/lien\>)/g,t)
t=remplace_tag(/\<lien url="(<\s\S>*?)\">(.+)\<\/lien\>/g,'<a href="$1">$2</a>',t) 
t=remblaie(t)
// balise lien
t=deblaie(/(\<\/lien\>)/g,t)
t=remplace_tag(/\<lien>(.+)\<\/lien\>/g,'<a href="$1">$1</a>',t) 
t=remblaie(t)

// balise mail
t=deblaie(/(\<\/email\>)/g,t)
t=remplace_tag(/\<email adresse"=(<\s\S>*?)\>(.+)\"<\/email\>/g,'<a href="mailto:$1">$2</a>',t) 
t=remblaie(t)
// balise mail
t=deblaie(/(\<\/email\>)/g,t)
t=remplace_tag(/\<email>(.+)\<\/email\>/g,'<a href="mailto:$1">$1</a>',t) 
t=remblaie(t)

// balise Image
t=deblaie(/(\<\/image\>)/g,t)
t=remplace_tag(/\<image\>(.+)\<\/image\>/g,'<img src="$1" alt=""/>',t)
t=remblaie(t)

// balise URL   
t=deblaie(/(\<\/url\>)/g,t)
t=remplace_tag(/\<\url=(<\s\S>*?)\>(.+)\<\/url\>/g,'<a href="$1" target="_blank">$2</a>',t)
t=remblaie(t)


/*


###########SMILEY##############
*/
t=remplace_tag(/:\)/g,'<img src="../images/smiley/smile.png" alt=":)" />',t) 
t=remblaie(t)

t=remplace_tag(/:D/g,'<img src="../images/smiley/heureux.png" alt=":D" />',t) 
t=remblaie(t)

t=remplace_tag(/:\(/g,'<img src="../images/smiley/triste.png" alt=":(" />',t) 
t=remblaie(t)

t=remplace_tag(/:-\(/g,'<img src="../images/smiley/pleure.png" alt=":-(" />',t) 
t=remblaie(t)

t=remplace_tag(/:p /g,'<img src="../images/smiley/langue.png" alt=":p" />',t) 
t=remblaie(t)

t=remplace_tag(/;\)/g,'<img src="../images/smiley/clin.png" alt=";)" />',t) 
t=remblaie(t)

t=remplace_tag(/:siffle:/g,'<img src="../images/smiley/siffle.png" alt=":siffle:" />',t) 
t=remblaie(t)


t=remplace_tag(/:lol:/g,'<img src="../images/smiley/rire.gif" alt=":lol:" />',t) 
t=remblaie(t)

t=remplace_tag(/o_O/g,'<img src="../images/smiley/blink.gif" alt="o_O" />',t) 
t=remblaie(t)

t=remplace_tag(/:waw:/g,'<img src="../images/smiley/waw.png" alt=":waw:" />',t) 
t=remblaie(t)

t=remplace_tag(/:o/g,'<img src="../images/smiley/huh.png" alt=":o" />',t) 
t=remblaie(t)

t=remplace_tag(/:ange:/g,'<img src="../images/smiley/ange.png" alt=":ange:" />',t) 
t=remblaie(t)

t=remplace_tag(/:diable:/g,'<img src="../images/smiley/diable.png" alt=":diable:" />',t) 
t=remblaie(t)

t=remplace_tag(/:magicien:/g,'<img src="../images/smiley/magicien.png" alt=":magicien:" />',t) 
t=remblaie(t)

t=remplace_tag(/:ninja:/g,'<img src="../images/smiley/ninja.png" alt=":ninja:" />',t) 
t=remblaie(t)

t=remplace_tag(/:pirate:/g,'<img src="../images/smiley/pirate.png" alt=":pirate:" />',t) 
t=remblaie(t)

t=remplace_tag(/:soleil:/g,'<img src="../images/smiley/soleil.png" alt=":soleil:" />',t) 
t=remblaie(t)

t=remplace_tag(/:zorro:/g,'<img src="../images/smiley/zorro.png" alt=":zorro:" />',t) 
t=remblaie(t)

t=remplace_tag(/:colere:/g,'<img src="../images/smiley/angry.gif" alt=":colere:" />',t) 
t=remblaie(t)

t=remplace_tag(/:rouge:/g,'<img src="../images/smiley/rouge.png" alt=":rouge:" />',t) 
t=remblaie(t)



t=unkhol(t)
t=nl2br(t)
return t


}
<!-- tout le code qui suit c'est pour transformer toutes les balises, comme les preg_replace en PHP -->
function deblaie(reg,t) {
message=new String(t);
return message.replace(reg,'$1\n');
}
function remblaie(t) {
message=new String(t);
return message.replace(/\n/g,'');
}
function remplace_tag(reg,rep,t) {
message=new String(t);
return message.replace(reg,rep);
}
function nl2br(t) {
message=new String(t);
return message.replace(/\n/g,'<br/>');
}
function nl2khol(t) {
message=new String(t);
return message.replace(/\n/g,ptag);
}
function unkhol(t) {
message=new String(t);
return message.replace(new RegExp(ptag,'g'),'\n');
}   
