From 658bbd8aaf4ce0a70a83b29ac10348e29a43ecfd Mon Sep 17 00:00:00 2001
From: ARNO* <arno@rezo.net>
Date: Mon, 25 Aug 2003 14:05:01 +0000
Subject: [PATCH] =?UTF-8?q?M=C2=90me=20barre=20pour=20Mozilla=20que=20pour?=
 =?UTF-8?q?=20MSIE.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ecrire/inc_barre.php3 | 20 ++++++--------------
 spip_barre.js         | 19 ++++++-------------
 2 files changed, 12 insertions(+), 27 deletions(-)

diff --git a/ecrire/inc_barre.php3 b/ecrire/inc_barre.php3
index 31776411ea..469fa4e5b4 100644
--- a/ecrire/inc_barre.php3
+++ b/ecrire/inc_barre.php3
@@ -92,19 +92,13 @@ function afficher_barre($formulaire='',$texte='', $forum=false) {
 		$col++;
 		if ($spip_lang == "fr") {
 			$ret .= bouton_barre_racc ("javascript:barre_raccourci('&laquo;','&raquo;',$champ)", "barre-guillemets.png", "InsŽrer des &laquo; guillemets fran&ccedil;ais &raquo;", $formulaire, $texte);
-			//$ret .= "<a href=\"javascript:barre_raccourci('&laquo;','&raquo;',$champ, 'InsŽrer des &laquo; guillemets fran&ccedil;ais &raquo;')\"><img src='".($flag_ecrire ? "" : "ecrire/")."img_pack/barre-guillemets.png' border='0' width='24' height='24' title='Placer entre guillemets'></a>";
-			if (test_claret()) {
-				$ret .= "&nbsp;&nbsp;&nbsp;";
-				$ret .= bouton_barre_racc ("javascript:barre_inserer('&OElig;',$champ)", "barre-oe-maj.png", "Ins&eacute;rer un E-dans-l-O majuscule", $formulaire, $texte);
-				$ret .= bouton_barre_racc ("javascript:barre_inserer('&oelig;',$champ)", "barre-oe.png", "Ins&eacute;rer un E-dans-l-O", $formulaire, $texte);
-				$ret .= bouton_barre_racc ("javascript:barre_inserer('&Agrave;',$champ)", "barre-a-grave.png", "Ins&eacute;rer un A accent grave", $formulaire, $texte);
-				$ret .= bouton_barre_racc ("javascript:barre_inserer('&Eacute;',$champ)", "barre-e-aigu.png", "Ins&eacute;rer un E accent aigu", $formulaire, $texte);
-			}
-		}
-		if (test_claret()) {
-			$ret .= "&nbsp;";
-			$ret .= bouton_barre_racc ("javascript:barre_inserer('&euro;',$champ)", "barre-euro.png", "Ins&eacute;rer le symbole euro", $formulaire, $texte);
+			$ret .= bouton_barre_racc ("javascript:barre_inserer('&OElig;',$champ)", "barre-oe-maj.png", "Ins&eacute;rer un E-dans-l-O majuscule", $formulaire, $texte);
+			$ret .= bouton_barre_racc ("javascript:barre_inserer('&oelig;',$champ)", "barre-oe.png", "Ins&eacute;rer un E-dans-l-O", $formulaire, $texte);
+			$ret .= bouton_barre_racc ("javascript:barre_inserer('&Agrave;',$champ)", "barre-a-grave.png", "Ins&eacute;rer un A accent grave", $formulaire, $texte);
+			$ret .= bouton_barre_racc ("javascript:barre_inserer('&Eacute;',$champ)", "barre-e-aigu.png", "Ins&eacute;rer un E accent aigu", $formulaire, $texte);
 		}
+		$ret .= "&nbsp;";
+		$ret .= bouton_barre_racc ("javascript:barre_inserer('&euro;',$champ)", "barre-euro.png", "Ins&eacute;rer le symbole euro", $formulaire, $texte);
 		$ret .= "</td>";
 		
 		$ret .= "<td> &nbsp; </td>";
@@ -125,8 +119,6 @@ function afficher_barre($formulaire='',$texte='', $forum=false) {
 }
 
 function afficher_claret() {
-	if (test_claret()) {
 		return "onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);' ondbclick='storeCaret(this);'";
-	}
 }
 ?>
\ No newline at end of file
diff --git a/spip_barre.js b/spip_barre.js
index 981f0da922..1b9ff9ff66 100644
--- a/spip_barre.js
+++ b/spip_barre.js
@@ -64,13 +64,15 @@ function barre_inserer(text,champ) {
 		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
 		txtarea.focus();
 	} else {
-		txtarea.value  += text;
-		txtarea.focus();
+		//txtarea.value  += text;
+		//txtarea.focus();
+		mozWrap(txtarea, '', text);
+		return;
 	}
 }
 
 
-// Nicolas Hoizey 
+// D'apres Nicolas Hoizey 
 function barre_tableau(toolbarfield)
 {
 	var txtarea = toolbarfield;
@@ -96,16 +98,7 @@ function barre_tableau(toolbarfield)
 			var sel = document.selection.createRange();
 			sel.text = str + '\n\n' + tbl + '\n\n';
 		} else {
-			var selLength = txtarea.textLength;
-			var selStart = txtarea.selectionStart;
-			var selEnd = txtarea.selectionEnd;
-			if (selEnd == 1 || selEnd == 2) {
-				selEnd = selLength;
-			}
-			var s1 = (txtarea.value).substring(0,selStart);
-			var s2 = (txtarea.value).substring(selStart, selEnd)
-			var s3 = (txtarea.value).substring(selEnd, selLength);
-			txtarea.value = s1 + s2 + "\n\n" + tbl + "\n\n" + s3;
+			mozWrap(txtarea, '', "\n\n" + tbl + "\n\n");
 		}
 	}
 	return;
-- 
GitLab