/* TYPE
	0 : smileys
	1 : balise de style qui encadre
	2 : balise de style de type simple */
function ajouterStyle(element, valeurFantome, balise, type, attr) {
	var element = document.getElementsByName(element)[0];
	element.focus();

	if(document.getSelection) {
		var debut_selection = element.selectionStart;
		var fin_selection = element.selectionEnd;
		var selection = element.value.substr(element.selectionStart, element.selectionEnd);
	}
	else {
		var selection = element.createTextRange();
		selection.moveToBookmark(document.selection.createRange().getBookmark());
		selection.moveEnd('character', element.value.length);
		var debut_selection = element.value.length - selection.text.length;
		
		selection.moveToBookmark(document.selection.createRange().getBookmark());
		selection.moveStart('character', -element.value.length);
		var fin_selection = selection.text.length;
		
		var selection = document.selection.createRange().text;
	}

	if(element.value == valeurFantome)
		element.value = '';

	if(type == 0) {
		var texte = balise.split('¤')[0]+' ';
			
		if(debut_selection > 0)
			texte = ' '+texte;
	}
	else if(type == 1 || type == 2) {
		if(attr) {
			var infos = attr.split('¤');
			var attr_val = prompt(infos[1]);
			
			if(!attr_val)
				attr_val = '';
			
			attr_val = ' '+infos[0]+'="'+attr_val+'"';
		}
		else
			var attr_val = '';
		
		if(type == 1) {
			var texte_debut = '<'+balise+attr_val+'>';
			var texte_fin = '</'+balise+'>';
		}
		else {
			var texte = '<'+balise+attr_val+' /> ';
			
			if(debut_selection > 0)
				texte = ' '+texte;
		}
	}
	
	if(type == 0 || type == 2) {
		var positionDebut = debut_selection + texte.length;
		var positionFin = positionDebut;
		element.value = element.value.substr(0, debut_selection) + texte + element.value.substr(fin_selection, element.value.length - fin_selection);
	}
	else {
		var positionDebut = debut_selection + texte_debut.length;
		var positionFin = fin_selection + texte_debut.length;
		element.value = element.value.substr(0, debut_selection) + texte_debut + element.value.substr(debut_selection, fin_selection - debut_selection) + texte_fin + element.value.substr(fin_selection, element.value.length - fin_selection);
	}
	
	if(document.getSelection)
		element.setSelectionRange(positionDebut, positionFin);
	else {
		selection = element.createTextRange();
		selection.moveStart('character', positionDebut);
		selection.moveEnd('character', -element.value.length + positionFin);
		selection.select();
	}
}