var gObjet = null;

function aFocus(objet) {
	gObjet = objet;
}

function AjoutTexte(bouton, startTag,endTag,imgSec) {
if (document.getSelection) {
	AjoutTexte2(bouton, startTag,endTag,imgSec);
} else {
	if (document.selection.createRange().text) {
			var str = document.selection.createRange().text;
			gObjet.focus();
			var sel = document.selection.createRange();
			if (startTag == endTag) {
				sel.text = startTag + str;
			} else {
				sel.text = startTag + str + endTag;
			}
	 } else {
		AjoutTexte2(bouton, startTag,endTag,imgSec);
	 }
}
}
function AjoutTexte3(bouton, startTag,endTag,imgSec) {
if(typeof gObjet.selectionStart != 'undefined')
  {
    /* Insertion du code de formatage */
    var start = gObjet.selectionStart;
    var end = gObjet.selectionEnd;
    var insText = gObjet.value.substring(start, end);
	if (start == end) {
		tagAMettre = MiseEnFormeBouton(bouton, startTag,endTag,imgSec);
	    gObjet.value = gObjet.value.substr(0, start) + tagAMettre + insText + gObjet.value.substr(end);
	} else {
	    gObjet.value = gObjet.value.substr(0, start) + startTag + insText + endTag + gObjet.value.substr(end);
	}
    /* Ajustement de la position du curseur */
    var pos;
    if (insText.length == 0) {
      pos = start + repdeb.length;
    } else {
      pos = start + repdeb.length + insText.length + repfin.length;
    }
    gObjet.selectionStart = pos;
    gObjet.selectionEnd = pos;
	return true;
  } else {
  	return false;
  }
}
function MiseEnFormeBouton(bouton, startTag,endTag,imgSec) {
		if (imgSec=="") {
			if (bouton.value.substring(bouton.value.length - 1,bouton.value.length)=="*") {
				tagAMettre = endTag;
				bouton.value = bouton.value.substring(0,(bouton.value.length - 1));
			} else {
				tagAMettre = startTag;
				bouton.value = bouton.value+ "*";
			}
		} else {
			if (bouton.src.substring(bouton.src.length - 5,bouton.src.length )=="_.jpg") {
				tagAMettre = endTag;
				bouton.border=0;
				bouton.src = bouton.src.substring(0,bouton.src.length - 5 )+".jpg";
			} else {
				tagAMettre = startTag;
				bouton.border = 1;
				bouton.src = bouton.src.substring(0,bouton.src.length - 4 )+"_.jpg";
			}
		}
	return tagAMettre;
}
function AjoutTexte2(bouton, startTag,endTag,imgSec) {
if (!AjoutTexte3(bouton, startTag,endTag,imgSec)) {
		if ((startTag==endTag)||(endTag=="")) {
			tagAMettre = startTag;
		} else {
			tagAMettre = MiseEnFormeBouton(bouton, startTag,endTag,imgSec);
		}
		
	  if (gObjet.createTextRange)   {
		 var text;
		 var tagAMettre;
		 gObjet.focus(gObjet.caretPos);
		 gObjet.caretPos = document.selection.createRange().duplicate();
		 if(gObjet.caretPos.text.length>0)	 {
			var sel = gObjet.caretPos.text;
			var fin = '';
			while(sel.substring(sel.length-1, sel.length)==' ')		{
			   sel = sel.substring(0, sel.length-1)
			   fin += ' ';
			}
			gObjet.caretPos.text = tagAMettre + sel + fin;
		 } else
			gObjet.caretPos.text = tagAMettre;
	  } else gObjet.value += tagAMettre;
}
}
