var isMozilla = (navigator.userAgent.toLowerCase().indexOf('gecko')!=-1) ? true : false; var regexp = new RegExp("[\r]","gi"); function storeCaret(selec,formulaire,champs) { if (isMozilla) { // Si on est sur Mozilla oField = document.forms[formulaire].elements[champs]; 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 + "[/" + selec + "]" + objectValueFin; oField.selectionStart = strlen(objectValueDeb); oField.selectionEnd = strlen(objectValueDeb + "[" + selec + "]" + objectSelected + "[/" + selec + "]"); oField.focus(); oField.setSelectionRange( objectValueDeb.length + selec.length + 2, objectValueDeb.length + selec.length + 2); } else { // Si on est sur IE oField = document.forms[formulaire].elements[champs]; 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 + "[/" + 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['news'].elements['newst'], pos); var r = oField.createTextRange(); r.moveStart('character', pos); r.collapse(); r.select(); } } } function emoticon(text,formulaire,champs) { var txtarea = document.forms[formulaire].elements[champs]; text = ' ' + text + ' '; if (txtarea.createTextRange && txtarea.caretPos) { var caretPos = txtarea.caretPos; caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text; txtarea.focus(); } else { txtarea.value += text; txtarea.focus(); } } function quoting(pseudo,text,formulaire,champs) { var txtarea = document.forms[formulaire].elements[champs]; text = '[quote='+pseudo+']' + text + '[/quote]'; while (text.indexOf('\\n')!=-1) text = text.replace('\\n','\n'); if (txtarea.createTextRange && txtarea.caretPos) { var caretPos = txtarea.caretPos; caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text; txtarea.focus(); } else { txtarea.value += text; txtarea.focus(); } } function showSmileys(formulaire,champs) { window.open('http://www.forum-sexualite.net/pages/popup_smileys.php?form='+formulaire+'&element='+champs,'Smileys','height=250,width=400,resizable=1,fullscreen=0,toolbar=0,statut=0'); } function showColor(formulaire,champs) { window.open('http://www.forum-sexualite.net/pages/popup_color.php?form='+formulaire+'&element='+champs,'Couleurs','height=220,width=300,resizable=0,fullscreen=0,toolbar=0,statut=0'); } function chooseColor(formulaire,champs) { window.open('http://www.forum-sexualite.net/pages/popup_color2.php?form='+formulaire+'&element='+champs,'Couleurs','height=220,width=300,resizable=0,fullscreen=0,toolbar=0,statut=0'); } function chooseTheme(formulaire,champs) { window.open('http://www.forum-sexualite.net/pages/popup_theme.php?form='+formulaire+'&element='+champs,'Theme','height=400,width=250,scrollbars=1,resizable=0,fullscreen=0,toolbar=0,statut=0'); } function refresh() { shoutbox.location.reload(); } function alerter(type,id_objet,id_parent) { window.open('http://www.forum-sexualite.net/pages/popup_alerter.php?type='+type+'&id_objet='+id_objet+'&id_parent='+id_parent,'Alerter','height=260,width=410,resizable=0,fullscreen=0,toolbar=0,statut=0'); }