var timer=0;
var ptag=String.fromCharCode(5,6,7);
function  previsualisation() {
t=document.formulaire.textarea.value 
t=code_to_html(t)
if (document.getElementById) document.getElementById("prev").innerHTML=t
if (document.formulaire.auto.checked) timer=setTimeout(previsualisation,10)
<!-- 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 <!-- on lui dis que telles balises correspondent à tels codes en HTML -->
t=deblaie(/(\[\/gras\])/g,t)
t=remplace_tag(/\[gras\](.+)\[\/gras\]/g,'<span style="font-weight: bold;">$1</span>',t) 
t=remblaie(t)

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

// balise Citation
t=deblaie(/(\[\/citation\])/g,t)
t=remplace_tag(/\[citation=([\s\S]*?)\](.+)\[\/citation\]/g,'<strong>Citation $1 :</strong><div style="border: 1px solid #000000; width: 70%; 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 information
t=deblaie(/(\[\/info\])/g,t)
t=remplace_tag(/\[info\](.+)\[\/info\]/g,'<p><img src="http://webcultureweb.free.fr/pages_index/zcode/zcode_info.png" border="0" alt="" align="middle"/>&nbsp;&nbsp;<span style="color: green;">$1</span></p>',t)
t=remblaie(t)

// balise question
t=deblaie(/(\[\/question\])/g,t)
t=remplace_tag(/\[question\](.+)\[\/question\]/g,'<p><img src="http://webcultureweb.free.fr/pages_index/zcode/zcode_question.png" border="0" alt="" align="middle" />&nbsp;&nbsp;<span style="color: blue;">$1</span></p>',t)
t=remblaie(t)

// balise erreur
t=deblaie(/(\[\/erreur\])/g,t)
t=remplace_tag(/\[erreur\](.+)\[\/erreur\]/g,'<p><img src="http://webcultureweb.free.fr/pages_index/zcode/zcode_erreur.png" border="0" alt="" align="middle"/>&nbsp;&nbsp;<span style="color: red;">$1</span></p>',t)
t=remblaie(t)

// balise attention
t=deblaie(/(\[\/attention\])/g,t)
t=remplace_tag(/\[attention\](.+)\[\/attention\]/g,'<p><img src="http://webcultureweb.free.fr/pages_index/zcode/zcode_attention.png" border="0" alt="" align="middle" />&nbsp;&nbsp;<span style="color: orange;">$1</span></p>',t)
t=remblaie(t)

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

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

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

// balise  couleur
t=deblaie(/(\[\/color\])/g,t)
t=remplace_tag(/\[color=(red|green|blue|yellow|purple|olive)\](.+)\[\/color\]/g,'<font color="$1">$2</font>',t)

t=remblaie(t)

// balise  position
t=deblaie(/(\[\/position\])/g,t)
t=remplace_tag(/\[position=(left|center|right)\](.+)\[\/position\]/g,'<div align="$1">$2</div>',t)
t=remblaie(t)

// balise  flottant gauche
t=deblaie(/(<\/flottant>)/g,t)
t=remplace_tag(/<flottant valeur = gauche>(.+)<\/flottant>/g,'<style type="text/css">#flottant_gauche {float: left;clear: none;padding-right: 20px;padding-bottom: 10px;padding-top: 10px;margin-left: 10px;}</style><div id="flottant_gauche">$1</div>',t)
t=remblaie(t)

// balise  flottant droite
t=deblaie(/(<\/flottant>)/g,t)
t=remplace_tag(/<flottant valeur = droite>(.+)<\/flottant>/g,'<style type="text/css">#flottant_droite {float: right;clear: none;padding-left: 20px;padding-bottom: 10px;padding-top: 10px;margin-right: 10px;}</style><div id="flottant_droite">$1</div>',t)
t=remblaie(t)

// balise  police
t=deblaie(/(<\/police>)/g,t)
t=remplace_tag(/<police valeur = (.+)>(.+)<\/police>/g,'<span style="font-family: $1;">$2</span>',t)
t=remblaie(t)

// balise  taille
t=deblaie(/(\[\/taille\])/g,t)
t=remplace_tag(/\[taille=(5|4|3|2|1)\](.+)\[\/taille\]/g,'<font size="$1">$2</font>',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)

// smilies Smile <!-- on oublie pas les smilies -->
t=remplace_tag(/:d/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/smile.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:D/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/heureux.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/;d/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/clin.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:p/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/langue.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:lol:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/rire.gif" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:euh:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/unsure.gif" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:triste:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/triste.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:o/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/huh.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:colere:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/mechant.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:blink:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/blink.gif" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:hihi:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/hihi.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:pirate:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/pirate.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:ange:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/ange.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:magicien:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/magicien.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:ninja:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/ninja.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:waw:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/waw.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:zorro:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/zorro.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/>_</g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/pinch.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:diable:/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/diable.png" alt="" />',t) 
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)

t=remplace_tag(/:-°/g,'<img src="http://webcultureweb.free.fr/pages_index/smileys/siffle.png" alt="" />',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) {
textarea=new String(t);
return textarea.replace(reg,'$1\n');
}
function remblaie(t) {
textarea=new String(t);
return textarea.replace(/\n/g,'');
}
function remplace_tag(reg,rep,t) {
textarea=new String(t);
return textarea.replace(reg,rep);
}
function nl2br(t) {
textarea=new String(t);
return textarea.replace(/\n/g,'<br/>');
}
function nl2khol(t) {
textarea=new String(t);
return textarea.replace(/\n/g,ptag);
}
function unkhol(t) {
textarea=new String(t);
return textarea.replace(new RegExp(ptag,'g'),'\n');
}
function Lien() {
	i = document.titre0.selectedIndex;
	if (i == 0) return;
	url = document.titre0.options[i].value;
}
function bbcode(bbdebut, bbfin)
{
var input = window.document.formulaire.textarea;
input.focus();
/* pour IE (toujous un cas appar lui ;) )*/
if(typeof document.selection != 'undefined')
{
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();
}
/* pour les navigateurs plus récents que IE comme Firefox... */
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) + 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;
}
/* pour les autres navigateurs comme Netscape... */
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) + bbdebut + insText + bbfin + input.value.substr(pos);
}
}
function smilies(img)
{
window.document.formulaire.textarea.value += '' + img + '';
}
