function storeCaret (textarea) { 
if (document.getElementById(textarea).createTextRange) document.getElementById(textarea).caretPos = document.selection.createRange().duplicate(); 
}
	

function insertAtCaret (textarea, icon1, icon2) { 
if (document.getElementById(textarea).createTextRange && document.getElementById(textarea).caretPos) { 
var caretPos = document.getElementById(textarea).caretPos; 
selectedtext = caretPos.text; 
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == '' ? icon1 + '' : icon1; 
caretPos.text = caretPos.text + selectedtext + icon2; 
} else document.getElementById(textarea).value = document.getElementById(textarea).value + icon1 + ' ' + icon2 
document.getElementById(textarea).focus(); 
}


function PopupinsertAtCaret (textarea, icon1, icon2) { 
if (opener.document.getElementById(textarea).createTextRange && opener.document.getElementById(textarea).caretPos) { 
var caretPos = opener.document.getElementById(textarea).caretPos; 
selectedtext = caretPos.text; 
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == '' ? icon1 + '' : icon1; 
caretPos.text = caretPos.text + selectedtext + icon2; 
} else opener.document.getElementById(textarea).value = opener.document.getElementById(textarea).value + icon1 + ' ' + icon2 
}


function substr_count(str, ssstr) {
num = 0;
while(str.indexOf(ssstr) != -1) 
{
str = str.substr(str.indexOf(ssstr) + ssstr.length, str.length - (str.indexOf(ssstr)+ssstr.length));
num++;
}
return num;
}


function backslash(textarea) {
texte = document.getElementById(textarea).value;
texte = texte.replace(/\\/g,"\\\\");
document.getElementById(textarea).value=texte;
}

function BBcode_close(textarea) {
texte = document.getElementById(textarea).value;
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[quote','[/quote]','[code]','[/code]','[li]','[/li]','[img','[/img]','[url','[/url]','[email]','[/email]','[center]','[/center]','[flash','[/flash]','[color','[/color]','[font','[/font]','[size','[/size]','[align','[/align]','[blink]','[/blink]','[strike]','[/strike]','[marquee]','[/marquee]','[updown]','[/updown]','[flip]','[/flip]','[blink]','[/blink]','[blur]','[/blur]','[glow','[/glow]','[shadow','[/shadow]');
size= bbtags.length;

for (var i =0; i < size; i+=2) {
nb_open=substr_count(texte, bbtags[i]);
nb_close=substr_count(texte, bbtags[i+1]);
                         
if (nb_open>nb_close) {
for (var z =nb_open; z > nb_close; z--){
texte+=bbtags[i+1];}
}
if (nb_open < nb_close) {
for (var a =nb_open; a < nb_close; a++){
texte=bbtags[i]+texte;}
}
}  
document.getElementById(textarea).value=texte;    
}


function ajout_url(textarea, texturl, textname){
VarUrl = window.prompt(texturl,'http://');
VarNom = window.prompt(textname,'');
if (VarUrl.indexOf('http://') == -1) VarUrl = 'http://'+VarUrl;
if ((VarUrl != null) && (VarUrl != '') && (VarNom != null) && (VarNom != '')) {
document.getElementById(textarea).value+= '[url='+VarUrl+']'+VarNom+'[/url]'}
}
	

function ajout_img(textarea, textimgturl){
VarImg = window.prompt( textimgturl,'http://' );
if (VarImg.indexOf('http://') == -1) VarImg = 'http://'+VarImg;
if ((VarImg != null) && (VarImg != '')) {
document.getElementById(textarea).value+= '[img]'+VarImg+'[/img]'}
}

	
function ajout_flash(textarea, textflashurl){
Varflash = window.prompt(textflashurl,'http://');
if (Varflash.indexOf('http://') == -1) Varflash = 'http://'+Varflash;
if ((Varflash != null) && (Varflash != '')) {
document.getElementById(textarea).value+= '[flash]'+Varflash+'[/flash]'}
}

	
function ajout_text(textarea, entertext, tapetext,balise){
VarTxt = window.prompt(entertext,tapetext);
if ((VarTxt != null) && (VarTxt != '')) {
document.getElementById(textarea).value+= '['+balise+']'+VarTxt+'[/'+balise+']'}
}

	
function ajout_mail(textarea, textmail){
VarMail = window.prompt(textmail,'admin@nuked-klan.org');
if ((VarMail != null) && (VarMail != '')) {
document.getElementById(textarea).value+= '[email]'+VarMail+'[/email]'}
}