User:Redline/onlyifediting.js

From Wikimedia Incubator

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)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
 /* <pre> */
 //============================================================
//
// Additional toolbar buttons
//
//============================================================

//============================================================
// generate the table
//============================================================

/**
 *
 * English: Generate an array using Mediawiki syntax
 *
 * @author: fr:user:dake
 * @version: 0.1
 */
 
function generateTableau(nbCol, nbRow, border, styleHeader, styleLine)
{
	var code = "\n";
	if (styleHeader==1) {
		code += '{{entête tableau charte}}\n';
	} else {
		code += '{| border="' + border + '"\n';
		code += '|+ Заголовок таблицы\n';
	}
	
	for (var i=0;i<nbCol;i++) code += '! заголовок ' + i + '\n'
	
	for (var j=0;j<nbRow;j++) {
		if ((j+1)%2==0 && styleLine==1) {
			code += '|-{'+'{серая строка}'+'}\n'
		} else {		
			code += '|-----\n'
		}
		
		for (var i=0;i<nbCol;i++) code += '| ячейка\n';
	}
	
	code += '|}';
	insertTags('','', code); 
}

/**
 *
 * English: Open a popup with parameters to generate an array. 
 * The number of rows/columns can be modified. Some additional
 * parameters are related to templates available on :fr
 *
 * @author: fr:user:dake
 * @version: 0.1
 */
 
function popupTableau()
{
  var popup = window.open('','name','height=400,width=500');
  
  javaCode =  '<script type="text\/javascript">function insertCode(){';
  javaCode += 'var row = parseInt(document.paramForm.inputRow.value); '
  javaCode += 'var col = parseInt(document.paramForm.inputCol.value); '
  javaCode += 'var bord = parseInt(document.paramForm.inputBorder.value); '
  javaCode += 'var styleHeader = document.paramForm.inputHeader.checked; '
  javaCode += 'var styleLine = document.paramForm.inputLine.checked; '
  javaCode += 'window.opener.generateTableau(col,row,bord,styleHeader,styleLine); '
  javaCode += '}<\/script>';
  
  popup.document.write('<html><head><title>Параметры таблицы</title>');
  popup.document.write('<script type="text\/javascript" src="\/skins-1.5\/common\/wikibits.js"><!-- wikibits js --><\/script>');
  popup.document.write('<style type="text\/css" media="screen,projection">/*<![CDATA[*/ @import "\/skins-1.5\/monobook\/main.css?5"; /*]]>*/<\/style>');
  popup.document.write(javaCode); 
  popup.document.write('</head><body>');
  popup.document.write('<p>Размеры таблицы : </p>');
  popup.document.write('<form name="paramForm">');
  popup.document.write('Строки : <input type="text" name="inputRow" value="3" ><p>');
  popup.document.write('Столбцы : <input type="text" name="inputCol" value="3" ><p>');
  popup.document.write('Толщина границ : <input type="text" name="inputBorder" value="1" ><p>');
  popup.document.write('Серый заголовок : <input type="checkbox" name="inputHeader" checked="1" ><p>');
  popup.document.write('альтернативный серый заголовок : <input type="checkbox" name="inputLine" checked="1" ><p>');
  popup.document.write('</form">');
  popup.document.write('<p><a href="javascript:insertCode()"> Вставить в поле правки код таблицы </a></p>');
  popup.document.write('<p><a href="javascript:self.close()"> Закрыть</a></p>');
  popup.document.write('</body></html>');
  popup.document.close();
}
//============================================================
// Insertion de nouveaux boutons dans la barre d'outil
//============================================================

/**
 * Ajoute quelques boutons sur la barre d'outil
 * Inspiré de mon code précédent et des icônes sur he:
 * @author: fr:user:dake
 * @version: 0.1
 */

//Remplit la variable mwCustomEditButtons (voir /skins-1.5/commons/wikibits.js) pour ajouter des boutons à la barre d'outils
function addCustomButton(imageFile, speedTip, tagOpen, tagClose, sampleText)
{
 mwCustomEditButtons[mwCustomEditButtons.length] =
 {"imageFile": imageFile,
  "speedTip": speedTip,
  "tagOpen": tagOpen,
  "tagClose": tagClose,
  "sampleText": sampleText};
}

addCustomButton('http://upload.wikimedia.org/wikipedia/fr/3/30/Btn_toolbar_rayer.png','Удалить строку',"<del>","</del>",'удаляемая строка');
addCustomButton('http://upload.wikimedia.org/wikipedia/fr/8/88/Btn_toolbar_enum.png','Список с номерами',"\n# 1-ый элемент\n# 2-ый элемент\n# 3-ый элемент","",'');
addCustomButton('http://upload.wikimedia.org/wikipedia/fr/1/11/Btn_toolbar_liste.png','Список с пулями',"\n* A-ый элемент\n* B-ый элемент\n* C-ый элемент","",'');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/e/ea/Button_align_left.png','Выравнивание влево','<div style="direction: ltr;">\n',"\n</div>",'абзац влево');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/5/5f/Button_center.png','Выравнивание посередине','<div style="text-align: center;">\n',"\n</div>",'абзац посередине');
addCustomButton('http://upload.wikimedia.org/wikipedia/meta/c/c9/Button_strike.png','Зачеркнуть строку',"<s>","</s>",'зачеркнутая строка');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/8/80/Button_upper_letter.png','Надстрочные знаки',"<sup>","</sup>",'надстрочный  текст');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/7/70/Button_lower_letter.png','Подстрочные знаки',"<sub>","</sub>",'подстрочный текст');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/5/58/Button_small.png','Уменьшёный текст',"<small>","</small>",'уменьшёный текст');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/1/13/Button_enter.png','Вставка перевода строки',"<br />","",'');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/f/fd/Button_blockquote.png','Вставка цитаты','<blockquote style="border: 1px solid blue; padding: 0.5em 0.8em;">\n',"\n</blockquote>",'цитата');
addCustomButton('http://upload.wikimedia.org/wikipedia/he/2/23/Button_code.png','Вставка кода',"<code>","</code>",'код');
addCustomButton('http://upload.wikimedia.org/wikipedia/fr/3/37/Btn_toolbar_commentaire.png','Комментарий',"<!--","-->",'');
addCustomButton('http://upload.wikimedia.org/wikipedia/fr/9/9e/Btn_toolbar_gallery.png','Вставка галереи',"\n<gallery>\nИзображение:M63.jpg|Галактика [[M63]]\nИзображение:Mona Lisa.jpg|[[Мона Лиза]]\nИзображение:Truite arc-en-ciel.jpg|[[Форель]]\n</gallery>","",'');
//Ressemble à la fonction de /skins-1.5/commons/wikibits.js pour insérer un autre lien que insertTags
function marque_tab()
{
 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 = 'http://upload.wikimedia.org/wikipedia/fr/0/04/Button_array.png';
 image.border = 0;
 image.alt = 'Вставка таблицы';
 image.title = 'Вставка таблицы';
 image.style.cursor = "pointer";
 image.onclick = function() {
   popupTableau();
   return false;
 }
 toolbar.appendChild(image);
}

addLoadEvent(marque_tab);

 // ===========================================

// ============================================================
 // BEGIN quickSummary
 //--------------------------
 /* Quick insert of Summary stuff */
 // Borrowed from [[:pl:MediaWiki:Monobook.js]

if (window.addEventListener) {
        window.addEventListener("load", quickSummary, false);
} else if (window.attachEvent) {
        window.attachEvent("onload", quickSummary);
}

function quickSummary() {
        quickInsert('орфо.', 'insertSummary("орфография")', 'userButtonsStyle',
              'Поправлена орфография');
        quickInsert('вики.', 'insertSummary("викификация")', 'userButtonsStyle',
              'Викификация статьи');
        quickInsert('малое', 'insertSummary("малое изменение")', 'userButtonsStyle',
              'Малое изменение');
        quickInsert('ссылки', 'insertSummary("ссылки")', 'userButtonsStyle',
              'Поправлены ссылки');
        quickInsert('кат.', 'insertSummary("категория")', 'userButtonsStyle',
              'Поправлена/добавлена категория');
        quickInsert('изо.', 'insertSummary("изображение")', 'userButtonsStyle',
              'Поправлено/добавлено изображение');
        quickInsert('стуб', 'insertSummary("стуб")', 'userButtonsStyle',
              ' В статью добавлен стуб');
        quickInsert('откат', 'insertSummary("откат")', 'userButtonsStyle',
              ' Откат к предыдущей версии');
}

function quickInsert(pText, pAction, pClass, pSummary) {
        k = document.getElementById('wpSummaryLabel');
        if (k) {
                newSpan = document.createElement('span');

                newText = document.createTextNode(pText);
                newSpan.appendChild(newText);

                newOnClick = document.createAttribute('onclick');
                newOnClick.nodeValue = pAction;
                newSpan.setAttributeNode(newOnClick);

                newSpan.title = pSummary;

                newClass = document.createAttribute('class');
                newClass.nodeValue = pClass;
                newSpan.setAttributeNode(newClass);

                k.appendChild(document.createTextNode(' '));
                k.appendChild(newSpan);
//              document.editform.wpMinoredit.onclick = onMinorEditClick;
        }
}

var clickedMinor = false;
function onMinorEditClick() {
        if (this.checked && !clickedMinor)
        {
                insertSummary("малое");
                clickedMinor = true;
        }
}

function insertSummary(summ) {
        if (document.editform.wpSummary.value != '' && document.editform.wpSummary.value.charAt(0) != '/') {
                document.editform.wpSummary.value += ', ' + summ
        }
        else {
                document.editform.wpSummary.value += ' ' + summ
        }
}
 // END quickSummary
 //----------------------------------------
/* </pre> */