MediaWiki:Gadget-Table.js
Appearance
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
function generateRowHeader(nbHCol, row_i)
{
var code = "";
for (var i=0;i<nbHCol;i++)
code += "! entêteR"+row_i+"Ch"+(i+1)+"\n";
return code;
}
function generateTableau(nbCol, nbRow, nbHCol, nbHRow, border, styleHeader, styleLine, arrayTitle)
{
var code = "\n{| " +
((styleHeader==1) ? 'class="wikitable"' : '')+
' border="' + border + '"\n'+(arrayTitle.length>0?'|+ '+arrayTitle+'\n':'');
for (var y=0;y<nbHRow;y++)
{
var y_coord = 'h'+(y+1);
if (y>0) code += '|-----\n';
code += generateRowHeader(nbHCol, y_coord);
for (var i=0;i<nbCol;i++)
{
code += '! entêteR'+y_coord+'C'+(i+1)+'\n';
}
}
for (var j=0;j<nbRow;j++)
{
var y_coord = (j+1);
code += '|-' + ( ((j&1)==1 && styleLine==1)
? '{'+'{ligne grise}'+'}\n'
: '----\n');
code += generateRowHeader(nbHCol, y_coord);
for (var i=0;i<nbCol;i++)
{
code += '| élémentR'+y_coord+'C'+(i+1)+'\n';
}
}
code += '|}';
insertTags('','', code);
}
function popupTableau()
{
var popup = window.open('','name','width=550,height=300');
popup.document.write(
'<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'+
'<title>Table Unicode</title><script type="text\/javascript">'+
'\nwgBreakFrames=1;\nvar stylepath = "'+stylepath+'";\nvar wgContentLanguage = "'+wgContentLanguage+'";\n</script>'+
'<script type="text\/javascript" src="'+stylepath+'\/common\/wikibits.js"><!-- wikibits js --><\/script>'+
'<style type="text\/css" media="screen,projection">/*<![CDATA[*/ @import "'+stylepath+'\/monobook\/main.css"; /*]]>*/<\/style>'+
'<style type="text\/css">body, td { font-size: 12pt; }<\/style>'+
'<script type="text\/javascript">function insertCode(){'+
'window.opener.generateTableau('+
'parseInt(document.paramForm.inputCol.value),'+
'parseInt(document.paramForm.inputRow.value),'+
'parseInt(document.paramForm.inputColHeader.value),'+
'parseInt(document.paramForm.inputRowHeader.value),'+
'parseInt(document.paramForm.inputBorder.value),'+
'document.paramForm.inputHeader.checked,'+
'document.paramForm.inputLine.checked,'+
'document.paramForm.arrayTitle.value);'+
'}<\/script>'+
'</head><body>'+
'<p>Veuillez entrer les paramètres du tableau : </p>'+
'<form name="paramForm"><table>'+
'<tr><td>Paramètres</td><td>En-tête</td><td>Normal</td></tr>'+
'<tr><td>Lignes :</td><td><input type="text" name="inputRowHeader" value="1" title="Nombre de lignes d\'en-tête"></td>'+
'<td><input type="text" name="inputRow" value="3" ></td></tr>'+
'<tr><td>Colonnes :</td><td><input type="text" name="inputColHeader" value="0" title="Nombre de colonnes d\'en-tête"></td>'+
'<td><input type="text" name="inputCol" value="3" ></td></tr>'+
'<tr><td>Largeur de la bordure :</td><td colspan="2"><input type="text" name="inputBorder" value="1" ></td></tr>'+
'<tr><td colspan="3">Titre du tableau :<input type="text" name="arrayTitle" value="" size="40" style="width:400px;"></td></tr>'+
'<tr><td colspan="2"><input type="checkbox" id="inputHeader" name="inputHeader" checked="1" >'+
' <label for="inputHeader">En-tête en gris (style « charte graphique »)</label></td></tr>'+
'<tr><td colspan="2"><input type="checkbox" id="inputLine" name="inputLine" checked="1" >'+
' <label for="inputLine">Lignes grises alternées (style « charte graphique »)</td></tr>'+
'<tr><td><input type="button" onclick="insertCode()" value="Insérer" title="Insérer le code wiki dans la fenêtre d\'édition"></td>'+
'<td><input type="button" onclick="javascript:self.close()" value="Fermer"></td></tr>'+
'</table></form">'+
'</body></html>');
popup.document.close();
}
function marqueTab() {
var toolbar = document.getElementById('toolbar');
if (!toolbar) return false;
var textbox = document.getElementById('wpTextbox1');
if (!textbox) return false;
if (!document.selection && textbox.selectionStart == null) return false;
var image = document.createElement("img");
image.width = 23;
image.height = 22;
image.src = url_wpcm+'0/04/Button_array.png';
image.border = 0;
image.alt = 'Tableau';
image.title = 'Tableau';
image.style.cursor = "pointer";
image.onclick = function() {
popupTableau();
return false;
};
toolbar.appendChild(image);
if (!wgIsScriptPage)
$(marqueTab);