
// Permet d'avoir les boutons du bbcode
function insertion(repdeb, repfin) {
  var input = document.getElementById('article_text');
  input.focus();
  /* pour l'Explorer Internet */
  if(typeof document.selection != 'undefined') {
    /* Insertion du code de formatage */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = repdeb + insText + repfin;
    /* Ajustement de la position du curseur */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -repfin.length);
    } else {
      range.moveStart('character', repdeb.length + insText.length + repfin.length);
    }
    range.select();
  }
  /* pour navigateurs plus récents basés sur Gecko*/
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Insertion du code de formatage */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + repdeb + insText + repfin + input.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;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* pour les autres navigateurs */
  else
  {
    /* requête de la position d'insertion */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Insertion à la position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Insertion du code de formatage */
    var insText = prompt("Veuillez entrer le texte à formater:");
    input.value = input.value.substr(0, pos) + repdeb + insText + repfin + input.value.substr(pos);
  }
}

//INSERTION SMILEY
function smiley(text) {
		var input = document.getElementById('article_text');
		text = ' ' + text + '';
		if (input.createTextRange && input.caretPos) {
				var caretPos = input.caretPos;
				caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + '' : text;
				input.focus();
		} else {
			input.value  += text;
			input.focus();
		}
}

//INSERTION DE LIEN
function insertion_lien(element) {
	if(!element){
			element = "article_text";
	}
	
   var textarea = document.getElementById(element);
	var scrollPos = textarea.scrollTop;
   
	if(!textarea.setSelectionRange) {
		if (window.getSelection){
			selected = window.getSelection();
		}
		else if (document.getSelection)	{
			selected = document.getSelection();
		}
		else if (document.selection)	{
			selected = document.selection.createRange().text;
		}
		//SI PAS DE SELECTION					
		if(selected.length <= 0)  {
			var url = prompt("Adresse du lien:", "http://");
				if(url!=null) {						
					textarea.value += "[url=" + url + "]"+url+"[/url]";
				}
        }
        else
        {
				var text_box_text=document.getElementById(element).value;
				if(selected!=null)	{
					if(text_box_text.indexOf(selected)!=-1)	{	    
						//AUTOUR DE LA SELECTION
						var url = prompt("Adresse du lien:", "http://");
							
						if(url!=null) {				
							document.selection.createRange().text = "[url=" + url + "]"+selected+"[/url]";
						}
					}
				}
        }
    }
    else   {
       
		var url = prompt("Adresse du lien:", "http://");
		if(url!=null) {
   
			var open = "[url=" + url + "]";
			var close = "[/url]";

			//TEXTE AVANT SELECT
			var pretext = textarea.value.substring(0, textarea.selectionStart);

			//TEXTE AVEC TAGS
			var codetext = open + textarea.value.substring(textarea.selectionStart, textarea.selectionEnd) + close;

			//TEXT APRES
			var posttext = textarea.value.substring(textarea.selectionEnd, textarea.value.length);

			//CHECK SI SELECTION
			if(codetext == open + close)	{
				codetext = open + url + close;
			}
			if(codetext == "") {
				codetext = url;
			}
			textarea.value = pretext + codetext + posttext;
		}			
	}
	var textarea = document.getElementById(element);
	caretPos(textarea,scrollPos);
	//ON REMET LE FOCUS
	textarea.focus();
}



// Montre l'infobulle
function GetId(id)
{
return document.getElementById(id);
}
var i=false; // La variable i nous dit si la bulle est visible ou non
 
function move(e) {
  if(i) {  // Si la bulle est visible, on calcul en temps reel sa position ideale
    if (navigator.appName!="Microsoft Internet Explorer") { // Si on est pas sous IE
    GetId("curseur").style.left=e.pageX + 5+"px";
    GetId("curseur").style.top=e.pageY + 10+"px";
    }
    else { // Modif proposÃ© par TeDeum, merci Ã  lui
    if(document.documentElement.clientWidth>0) {
	GetId("curseur").style.left=20+event.x+document.documentElement.scrollLeft+"px";
	GetId("curseur").style.top=10+event.y+document.documentElement.scrollTop+"px";
    } else {
	GetId("curseur").style.left=20+event.x+document.body.scrollLeft+"px";
	GetId("curseur").style.top=10+event.y+document.body.scrollTop+"px";
	     }
    }
  }
}
 
function montre(text) {
  if(i==false) {
  GetId("curseur").style.visibility="visible";
  GetId("curseur").innerHTML = text;
  i=true;
  }
}
function cache() {
if(i==true) {
GetId("curseur").style.visibility="hidden";
i=false;
}
}
document.onmousemove=move; 

//EXPLICATIONS CATS DEMANDE D'AIDE
function explain(id) {
	var div = document.getElementById('cat_explain');
	div.innerHTML = document.getElementById('cat_'+id).innerHTML;
	div.style.display = 'block';
}

