// VAR globales var explorateur = ""; if(document.getElementById && document.all) explorateur = "ie5"; if(!document.all && document.getElementById) explorateur = "ns6"; // FONCTIONS function round_n (nombre, nbChiffres) { return Math.round(nombre*Math.pow(10,nbChiffres))/Math.pow(10,nbChiffres); } //---Transforme un nombre en nombre en X digits avec des 0 devant function toXdigits(myIntegerNumber,X) { myIntegerNumber = parseInt(myIntegerNumber,10); myIntegerNumber += ''; myNewIntegerNumber = ''; for(Xi=myIntegerNumber.length; Xi0) { // Si on a selectionné du texte var sel = document.selection.createRange(); sel.text = "[" + selec + "]" + str + "[/" + selec + "]"; sel.collapse(); sel.select(); } else { oField.focus(oField.caretPos); // alert(oField.caretPos+"\n"+oField.value.length+"\n") oField.focus(oField.value.length); oField.caretPos = document.selection.createRange().duplicate(); var bidon = "%~%"; var orig = oField.value; oField.caretPos.text = bidon; var i = oField.value.search(bidon); oField.value = orig.substr(0,i) + "[" + selec + "][/" + selec + "]" + orig.substr(i, oField.value.length); var r = 0; for(n = 0; n < i; n++) {if(regexp.test(oField.value.substr(n,2)) == true){r++;}}; pos = i + 2 + selec.length - r; //placer(document.forms['Formulaire'].elements['contenu'], pos); var r = oField.createTextRange(); r.moveStart('character', pos); r.collapse(); r.select(); } } } function storeCaret_lien(selec,name,formulaire) { if(!name) name = 'contenu' ; if(!formulaire) formulaire = 'Formulaire' ; var url = prompt("Veuillez entrer l'url du lien.\nExemple : http://www.google.fr",'http://'); var oField = document.forms[formulaire].elements[name]; if(url) { var regexp = new RegExp("[\r]","gi"); if (explorateur == "ns6") { // Si on est sur Mozilla objectValue = oField.value; deb = oField.selectionStart; fin = oField.selectionEnd; objectValueDeb = objectValue.substring( 0 , oField.selectionStart ); objectValueFin = objectValue.substring( oField.selectionEnd , oField.textLength ); objectSelected = objectValue.substring( oField.selectionStart ,oField.selectionEnd ); // alert("Debut:'"+objectValueDeb+"' ("+deb+")\nFin:'"+objectValueFin+"' ("+fin+")\n\nSelectionné:'"+objectSelected+"'("+(fin-deb)+")"); if(objectSelected == "") objectSelected = url; oField.value = objectValueDeb + "[" + selec + "='"+url+"']" + objectSelected + "[/" + selec + "]" + objectValueFin; oField.selectionStart = strlen(objectValueDeb); oField.selectionEnd = strlen(objectValueDeb + "[" + selec + "='"+url+"']" + objectSelected + "[/" + selec + "]"); oField.focus(); oField.setSelectionRange( objectValueDeb.length + selec.length + 5, objectValueDeb.length + selec.length + 5); } else { // Si on est sur IE var str = document.selection.createRange().text; if (str.length>0) { // Si on a selectionné du texte var sel = document.selection.createRange(); sel.text = "[" + selec + "='"+url+"']" + str + "[/" + selec + "]"; sel.collapse(); sel.select(); } else { oField.focus(oField.caretPos); // alert(oField.caretPos+"\n"+oField.value.length+"\n") oField.focus(oField.value.length); oField.caretPos = document.selection.createRange().duplicate(); var bidon = "%~%"; var orig = oField.value; oField.caretPos.text = bidon; var i = oField.value.search(bidon); oField.value = orig.substr(0,i) + "[" + selec + "='"+url+"']"+url+"[/" + selec + "]" + orig.substr(i, oField.value.length); var r = 0; for(n = 0; n < i; n++) {if(regexp.test(oField.value.substr(n,5)) == true){r++;}}; pos = i + 5 + selec.length - r; //placer(document.forms['Formulaire'].elements['contenu'], pos); var r = oField.createTextRange(); r.moveStart('character', pos); r.collapse(); r.select(); } } } } function storeCaret_img(selec,name,formulaire) { if(!name) name = 'contenu' ; if(!formulaire) formulaire = 'Formulaire' ; var regexp = new RegExp("[\r]","gi"); var oField = document.forms[formulaire].elements[name]; if (explorateur == "ns6") { // Si on est sur Mozilla objectValue = oField.value; deb = oField.selectionStart; fin = oField.selectionEnd; objectValueDeb = objectValue.substring( 0 , oField.selectionStart ); objectValueFin = objectValue.substring( oField.selectionEnd , oField.textLength ); objectSelected = objectValue.substring( oField.selectionStart ,oField.selectionEnd ); // alert("Debut:'"+objectValueDeb+"' ("+deb+")\nFin:'"+objectValueFin+"' ("+fin+")\n\nSelectionné:'"+objectSelected+"'("+(fin-deb)+")"); oField.value = objectValueDeb + "" + selec + "" + objectSelected + objectValueFin; oField.selectionStart = strlen(objectValueDeb); oField.selectionEnd = strlen(objectValueDeb + "" + selec + "" + objectSelected); oField.focus(); oField.setSelectionRange( objectValueDeb.length + selec.length, objectValueDeb.length + selec.length); } else { // Si on est sur IE var str = document.selection.createRange().text; if (str.length>0) { // Si on a selectionné du texte var sel = document.selection.createRange(); sel.text = "" + selec + "" + str; sel.collapse(); sel.select(); } else { oField.focus(oField.caretPos); // alert(oField.caretPos+"\n"+oField.value.length+"\n") oField.focus(oField.value.length); oField.caretPos = document.selection.createRange().duplicate(); var bidon = "%~%"; var orig = oField.value; oField.caretPos.text = bidon; var i = oField.value.search(bidon); oField.value = orig.substr(0,i) + "" + selec + "" + orig.substr(i, oField.value.length); var r = 0; for(n = 0; n < i; n++) {if(regexp.test(oField.value.substr(n,2)) == true){r++;}}; pos = i + 2 + selec.length - r; //placer(document.forms['Formulaire'].elements['contenu'], pos); var r = oField.createTextRange(); r.moveStart('character', pos); r.collapse(); r.select(); } } } function popupParam(page, popupName, params) { if(!params) params = 'width=670,height=650,top=0,left=0,resizable=no,scrollbars=yes'; if(!popupName) popupName = 'popup'; // on ouvre dans une fenêtre le fichier passé en paramètre. Cette ouverture peut être améliorée en passant d'autres paramètres que la taille et la position de la fenêtre. wchoix=window.open(page, popupName, params); } //#################### FONCTION SUR LES DIV //---fonction qui ecrit dans les div function writeDiv(div_id,contenu) { document.getElementById(div_id).innerHTML = contenu; } //--Supprime un DIV function removeDiv(div_id) { document.getElementById(div_id).parentNode.removeChild(document.getElementById(div_id)); } //---test si le div est affiché ou non function isDisplayed(div_id) { if(document.getElementById(div_id).style.display == "none") return false; return true; } //---affiche ou cache le div function setDisplay(div_id,displaying) { document.getElementById(div_id).style.display = displaying; } //---Change image function swapPicture(img_id,imageLink) { document.getElementById(img_id).src = imageLink; } //#################### DEBUG MODE //---affiche les attributs d'un noeud function afficheAttribut(obj) { data=null; for(prop in obj) { if(prop!="outerText" && prop!="innerText" && prop!="innerHTML" && prop!="outerHTML") data+=prop+" = "+obj[prop]+" \t|
"; } writeDiv("debugMode",data); } function debug(string) { writeDiv("debugMode",string); }