[ Index ] |
|
Code source de SPIP Agora 1.4 |
1 // Check for Browser & Platform for PC & IE specific bits 2 // More details from: http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html 3 var clientPC = navigator.userAgent.toLowerCase(); // Get client info 4 var clientVer = parseInt(navigator.appVersion); // Get browser version 5 6 var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1)); 7 var is_nav = ((clientPC.indexOf('mozilla') != -1) && (clientPC.indexOf('spoofer') == -1) 8 && (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera') == -1) 9 && (clientPC.indexOf('webtv') == -1) && (clientPC.indexOf('hotjava') == -1)); 10 var is_moz = 0; 11 12 var is_win = ((clientPC.indexOf("win") != -1) || (clientPC.indexOf("16bit") != -1)); 13 var is_mac = (clientPC.indexOf("mac") != -1); 14 15 // From http://www.massless.org/mozedit/ 16 function mozWrap(txtarea, open, close) 17 { 18 var selLength = txtarea.textLength; 19 var selStart = txtarea.selectionStart; 20 var selEnd = txtarea.selectionEnd; 21 if (selEnd == 1 || selEnd == 2) { 22 selEnd = selLength; 23 } 24 var s1 = (txtarea.value).substring(0,selStart); 25 var s2 = (txtarea.value).substring(selStart, selEnd) 26 var s3 = (txtarea.value).substring(selEnd, selLength); 27 txtarea.value = s1 + open + s2 + close + s3; 28 return; 29 } 30 31 function raccourciTypo(toolbarfield, begin, end) 32 { 33 var txtarea = toolbarfield; 34 txtarea.focus(); 35 if ((clientVer >= 4) && is_ie && is_win) { 36 var str = document.selection.createRange().text; 37 var sel = document.selection.createRange(); 38 sel.text = begin + str + end; 39 } else if (txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0)) { 40 mozWrap(txtarea, begin, end); 41 } 42 return; 43 } 44 45 function insertAfterSelection(toolbarfield, data) 46 { 47 var txtarea = toolbarfield; 48 txtarea.focus(); 49 if ((clientVer >= 4) && is_ie && is_win) { 50 var str = document.selection.createRange().text; 51 var sel = document.selection.createRange(); 52 sel.text = str + data; 53 } else if (txtarea.selectionEnd) { 54 mozWrap(txtarea, '', data); 55 } 56 return; 57 } 58 59 function lien(toolbarfield) 60 { 61 var txtarea = toolbarfield; 62 txtarea.focus(); 63 var lien = prompt("Veuillez saisir une adresse Internet, ou l'url d'une page", "http://"); 64 if (lien != null) { 65 if ((clientVer >= 4) && is_ie && is_win) { 66 var str = document.selection.createRange().text; 67 var sel = document.selection.createRange(); 68 sel.text = "[" + str + "->" + lien + "]"; 69 } else if (txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0)) { 70 var selLength = txtarea.textLength; 71 var selStart = txtarea.selectionStart; 72 var selEnd = txtarea.selectionEnd; 73 if (selEnd == 1 || selEnd == 2) { 74 selEnd = selLength; 75 } 76 var s1 = (txtarea.value).substring(0,selStart); 77 var s2 = (txtarea.value).substring(selStart, selEnd) 78 var s3 = (txtarea.value).substring(selEnd, selLength); 79 txtarea.value = s1 + "[" + s2 + "->" + lien + "]" + s3; 80 } 81 } 82 return; 83 } 84 85 function lienInterne(toolbarfield) 86 { 87 var txtarea = toolbarfield; 88 txtarea.focus(); 89 var lien = prompt("Veuillez saisir la référence d'un élément interne (art42, rub33, bre73, etc.)", ""); 90 if (lien != null) { 91 if ((clientVer >= 4) && is_ie && is_win) { 92 var str = document.selection.createRange().text; 93 var sel = document.selection.createRange(); 94 sel.text = "[" + str + "->" + lien + "]"; 95 } else if (txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0)) { 96 var selLength = txtarea.textLength; 97 var selStart = txtarea.selectionStart; 98 var selEnd = txtarea.selectionEnd; 99 if (selEnd == 1 || selEnd == 2) { 100 selEnd = selLength; 101 } 102 var s1 = (txtarea.value).substring(0,selStart); 103 var s2 = (txtarea.value).substring(selStart, selEnd) 104 var s3 = (txtarea.value).substring(selEnd, selLength); 105 txtarea.value = s1 + "[" + s2 + "->" + lien + "]" + s3; 106 } 107 } 108 return; 109 } 110 111 function note(toolbarfield) 112 { 113 var txtarea = toolbarfield; 114 txtarea.focus(); 115 var note = prompt("Veuillez saisir une note de bas de page à ajouter à cet emplacement", ""); 116 if (note != null) { 117 if ((clientVer >= 4) && is_ie && is_win) { 118 var str = document.selection.createRange().text; 119 var sel = document.selection.createRange(); 120 sel.text = str + "[[" + note + "]]"; 121 } else if (txtarea.selectionEnd) { 122 var selLength = txtarea.textLength; 123 var selStart = txtarea.selectionStart; 124 var selEnd = txtarea.selectionEnd; 125 if (selEnd == 1 || selEnd == 2) { 126 selEnd = selLength; 127 } 128 var s1 = (txtarea.value).substring(0,selStart); 129 var s2 = (txtarea.value).substring(selStart, selEnd) 130 var s3 = (txtarea.value).substring(selEnd, selLength); 131 txtarea.value = s1 + s2 + "[[" + note + "]]" + s3; 132 } 133 } 134 return; 135 } 136 137 function tableau(toolbarfield) 138 { 139 var txtarea = toolbarfield; 140 txtarea.focus(); 141 var cols = prompt("Nombre de colonnes du tableau", ""); 142 var rows = prompt("Nombre de lignes du tableau", ""); 143 if (cols != null && rows != null) { 144 var tbl = ''; 145 var ligne = '|'; 146 var entete = '|'; 147 for(i = 0; i < cols; i++) { 148 ligne = ligne + 'valeur|'; 149 entete = entete + '{{entete}}|'; 150 } 151 for (i = 0; i < rows; i++) { 152 tbl = tbl + ligne + '\n'; 153 } 154 if (confirm('Voulez vous ajouter une ligne d\'en-tête ?')) { 155 tbl = entete + '\n' + tbl; 156 } 157 if ((clientVer >= 4) && is_ie && is_win) { 158 var str = document.selection.createRange().text; 159 var sel = document.selection.createRange(); 160 sel.text = str + '\n\n' + tbl + '\n\n'; 161 } else { 162 var selLength = txtarea.textLength; 163 var selStart = txtarea.selectionStart; 164 var selEnd = txtarea.selectionEnd; 165 if (selEnd == 1 || selEnd == 2) { 166 selEnd = selLength; 167 } 168 var s1 = (txtarea.value).substring(0,selStart); 169 var s2 = (txtarea.value).substring(selStart, selEnd) 170 var s3 = (txtarea.value).substring(selEnd, selLength); 171 txtarea.value = s1 + s2 + "\n\n" + tbl + "\n\n" + s3; 172 } 173 } 174 return; 175 } 176 177 function galerie(toolbarfieldname) 178 { 179 window.open('documents_tous.php?field='+toolbarfieldname, 'galerie', 'width=550,height=400,menubar=no,scrollbars=yes'); 180 return; 181 } 182 183 function drawToolbar(toolbarfield) 184 { 185 document.write('<link rel="stylesheet" type="text/css" href="toolbar.css" />\ 186 <p class="toolbar">\ 187 <a href="javascript:raccourciTypo(document.' + toolbarfield + ', \'{{\', \'}}\');"><b>Gras</b></a> \ 188 <a href="javascript:raccourciTypo(document.' + toolbarfield + ', \'{\', \'}\');"><i>Italique</i></a> \ 189 <a href="javascript:raccourciTypo(document.' + toolbarfield + ', \'{{{\', \'}}}\');">Intertitre</a> \ 190 <a href="javascript:raccourciTypo(document.' + toolbarfield + ', \'[?\', \']\');">Glossaire</a> \ 191 <a href="javascript:lien(document.' + toolbarfield + ');">Lien</a> \ 192 <a href="javascript:lienInterne(document.' + toolbarfield + ');">Lien interne</a> \ 193 <a href="javascript:note(document.' + toolbarfield + ');">Note</a> \ 194 <a href="javascript:tableau(document.' + toolbarfield + ');">Tableau</a> \ 195 <a href="javascript:galerie(\'' + toolbarfield + '\');">Galerie</a> \ 196 </p>'); 197 }
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sat Feb 24 14:40:03 2007 | par Balluche grâce à PHPXref 0.7 |