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)

}
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 color
t=deblaie(/(\[\/color\])/g,t)
t=remplace_tag(/\[color=(.+)\](.+)\[\/color\]/g,'<span style="color:$1;">$2</span>',t)
t=remblaie(t)

// balise Gras <!-- on lui dis que telles balises correspondent à tels codes en HTML -->
t=deblaie(/(\[\/gras\])/g,t)
t=remplace_tag(/\[gras\](.+)\[\/gras\]/g,'<strong>$1</strong>',t)  
t=remblaie(t)

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

// balise Barre
t=deblaie(/(\[\/barre\])/g,t)
t=remplace_tag(/\[barre\](.+)\[\/barre\]/g,'<span style="text-decoration:line-through;">$1</span>',t)  
t=remblaie(t)

// balise Souligne
t=deblaie(/(\[\/souligne\])/g,t)
t=remplace_tag(/\[souligne\](.+)\[\/souligne\]/g,'<span style="text-decoration:underline;">$1</span>',t)  
t=remblaie(t)

// balise TItre
t=deblaie(/(\[\/titre\])/g,t)
t=remplace_tag(/\[titre\](.+)\[\/titre\]/g,'<h5>$1</h5>',t)  
t=remblaie(t)

// balise cadre
t=deblaie(/(\[\/cadre\])/g,t)
t=remplace_tag(/\[cadre\](.+)\[\/cadre\]/g,'<table><tr><th>$1</th></tr></table>',t)  
t=remblaie(t)

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

// balise lien  
t=deblaie(/(\[\/lien\])/g,t)
t=remplace_tag(/\[\lien\](.+),(.+)\[\/lien\]/g,'<a href="$1">$2</a>',t)
t=remblaie(t)

// balise taille
t=deblaie(/(\[\/taille\])/g,t)
t=remplace_tag(/\[taille=(.+)\](.+)\[\/taille\]/g,'<span style="font-size:$1px;">$2</span>',t)
t=remblaie(t)

//alignement
t=deblaie(/(\[\/centre\])/g,t)
t=remplace_tag(/\[centre\](.+)\[\/centre\]/g,'<div style="text-align:center;">$1</div>',t)
t=remblaie(t)
t=deblaie(/(\[\/droite\])/g,t)
t=remplace_tag(/\[droite\](.+)\[\/droite\]/g,'<div style="text-align:right;">$1</div>',t)
t=remblaie(t)
t=deblaie(/(\[\/gauche\])/g,t)
t=remplace_tag(/\[gauche\](.+)\[\/gauche\]/g,'<div style="text-align:left;">$1</div>',t)
t=remblaie(t)

//alignement new
t=deblaie(/(\[\/align\])/g,t)
t=remplace_tag(/\[align=centre\](.+)\[\/align\]/g,'<div style="text-align:center;">$1</div>',t)
t=remblaie(t)
t=deblaie(/(\[\/align\])/g,t)
t=remplace_tag(/\[align=droite\](.+)\[\/align\]/g,'<div style="text-align:right;">$1</div>',t)
t=remblaie(t)
t=deblaie(/(\[\/align\])/g,t)
t=remplace_tag(/\[align=gauche\](.+)\[\/align\]/g,'<div style="text-align:left;">$1</div>',t)
t=remblaie(t)
t=deblaie(/(\[\/align\])/g,t)
t=remplace_tag(/\[align=justifie\](.+)\[\/align\]/g,'<div style="text-align:justify;">$1</div>',t)
t=remblaie(t)

//positionnement
t=deblaie(/(\[\/pos\])/g,t)
t=remplace_tag(/\[pos=droite\](.+)\[\/pos\]/g,'<div style="float:right;">$1</div>',t)
t=remblaie(t)
t=deblaie(/(\[\/pos\])/g,t)
t=remplace_tag(/\[pos=gauche\](.+)\[\/pos\]/g,'<div style="float:left;">$1</div>',t)
t=remblaie(t)

// balise video
t=deblaie(/(\[\/video\])/g,t)
t=remplace_tag(/\[video\](.+),(.+),(.+)\[\/video\]/g,'<div style="width:$2; height:$3; border:solid white 2px;"><br /><br />****  Video  ****</div>',t)
t=remblaie(t)

// balise son
t=deblaie(/(\[\/son\])/g,t)
t=remplace_tag(/\[son\](.+)\[\/son\]/g,'<div style="witdh:100px; height:20; border:solid white 2px; text-align:center;">****  MP3  ****</div>',t)
t=remblaie(t)


// smilies Smile <!-- on oublie pas les smilies -->
t=remplace_tag(/\:\)/g,'<img src="design/bbcode/smilies/smile[1].png" alt=":)" border="0" style="display:inline;"/>',t)  
t=remblaie(t)


t=remplace_tag(/\:D/g,'<img src="design/bbcode/smilies/heureux[1].png" alt=":D" border="0" style="display:inline;"/>',t)  
t=remblaie(t)

t=remplace_tag(/\;\)/g,'<img src="design/bbcode/smilies/clin[1].png" alt=";)" border="0" style="display:inline;" />',t)  
t=remblaie(t)

t=remplace_tag(/\:p/g,'<img src="design/bbcode/smilies/langue[1].png" alt=":p" border="0" style="display:inline;"/>',t)  
t=remblaie(t)

t=remplace_tag(/\:lol\:/g,'<img src="design/bbcode/smilies/rire[1].gif" alt=":lol:" border="0" style="display:inline;"/>',t)  
t=remblaie(t)

t=remplace_tag(/\:heu\:/g,'<img src="design/bbcode/smilies/unsure[1].gif" alt=":heu:" border="0" style="display:inline;" />',t)  
t=remblaie(t)

t=remplace_tag(/\:\(/g,'<img src="design/bbcode/smilies/triste[1].png" alt=":(" border="0" style="display:inline;"/>',t)  
t=remblaie(t)

t=remplace_tag(/\:\o/g,'<img src="design/bbcode/smilies/huh[1].png" alt=":o" border="0" style="display:inline;" />',t)  
t=remblaie(t)

t=remplace_tag(/\:colere\:/g,'<img src="design/bbcode/smilies/mechant[1].png" alt=":colere:" border="0" style="display:inline;" />',t)  
t=remblaie(t)

t=remplace_tag(/o_O/g,'<img src="design/bbcode/smilies/blink[1].gif" alt="o_O" border="0" style="display:inline;"/>',t)  
t=remblaie(t)

t=remplace_tag(/\^\^/g,'<img src="design/bbcode/smilies/hihi[1].png" alt="^^" border="0" style="display:inline;"/>',t)  
t=remblaie(t)

t=remplace_tag(/\:\-/g,'<img src="design/bbcode/smilies/siffle[1].png" alt=":-" border="0" style="display:inline;"/>',t)  
t=remblaie(t)


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

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');
}   