MediaWiki:Onlyifediting.js
Увага: Після публікування слід очистити кеш браузера, щоб побачити зміни.
- Firefox / Safari: тримайте Shift, коли натискаєте Оновити, або натисніть Ctrl-F5 чи Ctrl-Shift-R (⌘-R на Apple Mac)
- Google Chrome: натисніть Ctrl-Shift-R (⌘-Shift-R на Apple Mac)
- Internet Explorer / Edge: тримайте Ctrl, коли натискаєте Оновити, або натисніть Ctrl-F5
- Opera: натисніть Ctrl-F5
// <pre>
mw.loader.load('//uk.wikipedia.org/w/index.php?title=MediaWiki:Wikificator.js&action=raw&ctype=text/javascript');
// Script from [[:en:User:MarkS/extraeditbuttons.js]]
mw.loader.load('//uk.wikipedia.org/w/index.php?title=MediaWiki:extraeditbuttons.js&action=raw&ctype=text/javascript');
//============================================================
// Table generator
//============================================================
/**
*
* English: Generate an array using Mediawiki syntax
*
* @author: fr:user:dake (language conversion and new options added by en:user:Voice of All)
* @version: 0.1
*/
function generateTableau(nbCol, nbRow, border, styleHeader, styleLine, exfield, align, padding)
{
var code = "\n";
if (padding==false) padding=0;
else if (padding==true) padding=1;
code += '{| align="' + align + '" class="standard"\n';
code += '|+\n';
for (var i=1;i<nbCol+1;i++) code += '! |Стовпчик ' + i + '\n';
var items = 0;
for (var j=0;j<nbRow;j++) {
code += '|-----\n'
for (var i=0;i<nbCol;i++) code += '| комірка\n';
}
code += '|+\n';
code += '|}\n';
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 popupTable()
{
var popup = window.open('','name','height=180,width=300,scrollbars=yes');
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 = 0; '
javaCode += 'var styleHeader = false; '
javaCode += 'var styleLine = false; '
javaCode += 'var exfield = false; '
javaCode += 'var align = document.paramForm.inputAlign.value; '
javaCode += 'var padding = false; '
javaCode += 'window.opener.generateTableau(col,row,bord,styleHeader,styleLine,exfield,align,padding); '
javaCode += "alert('Таблиця створена!'); "
javaCode += 'window.close(); '
javaCode += '}<\/script>';
popup.document.write('<html><head><title>Створення таблиці</title>');
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="inputAlign" value="center" ><p>');
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('</form">');
popup.document.write('<p><a href="javascript:insertCode()">Вставити таблицю</a> |');
popup.document.write(' <a href="javascript:self.close()">Відмінити (зачинити вікно)</a></p>');
popup.document.write('</body></html>');
popup.document.close();
}
//Ressemble à la fonction de /w/skins/common/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 = '//upload.wikimedia.org/wikipedia/commons/0/04/Button_array.png';
image.border = 0;
image.alt = 'Таблиця';
image.title = 'Створити таблицю';
image.style.cursor = "pointer";
image.onclick = function() {
popupTable();
return false;
}
toolbar.appendChild(image);
var image2 = document.createElement("img");
image2.width = 23;
image2.height = 22;
image2.src = '//upload.wikimedia.org/wikipedia/commons/9/9c/Wikipedia-button-logo.PNG';
image2.border = 0;
image2.alt = 'Вікіфікатор';
image2.title = 'Вікіфікатор';
image2.style.cursor = "pointer";
image2.onclick = function() {
Wikify();
return false;
}
toolbar.appendChild(image2);
}
$(marque_tab);
// </pre>
// [[ru:MediaWiki:Onlyifediting.js]]
/*
==== Вставка стандартних описів змін ====
Скрипти створені в Польській Вікіпедії.
* Autor (Author, автор): [[:pl:User:Adziura|Adam Dziura]]
* Poprawki (Fixes, поправки): [[:pl:User:Nux|Maciej Jaros]]
<pre>
*/
function przyciskiOpis()
{
// stop before starting
if (window.przyciskiOpisDone)
return;
var el = document.getElementById('wpSummaryLabel');
if (el)
{
if (el.innerHTML.indexOf('ис змін')==-1)
return // stop
;
}
else
{
return; // stop
}
//
// створення контейнера для клавіш стандартних описів змін
var el = document.getElementById('wpSummary').nextSibling;
var opisBtns = document.createElement('span');
opisBtns.id = 'userSummaryButtonsA'
el.parentNode.insertBefore(document.createElement('br'), el)
el.parentNode.insertBefore(opisBtns, el)
//
// додавання клавіш
//var kl = 'userButtonsStyle';
var kl = ''; // клас — непотрібний (усі <a> в #userSummaryButtonsA встановлені через CSS)
if (opisBtns)
{
// drobne różne
przyciskiDodaj(opisBtns, 'вікіф.', 'dodajOpis("вікіфікація")', kl,
'Виконана вікіфікація');
przyciskiDodaj(opisBtns, 'оформл.', 'dodajOpis("оформлення")', kl,
'Покращено оформлення');
przyciskiDodaj(opisBtns, 'стиль', 'dodajOpis("стильові правлення")', kl,
'Поправлений стиль викладу');
przyciskiDodaj(opisBtns, 'орфогр.', 'dodajOpis("орфографія")', kl,
'Поправлена орфографія');
przyciskiDodaj(opisBtns, 'пункт.', 'dodajOpis("пунктуація")', kl,
'Змінена пунктуація');
przyciskiDodaj(opisBtns, 'інтервікі', 'dodajOpis("інтервікі")', kl,
'Виправлені/додані міжмовні посилання (інтервікі)');
przyciskiDodaj(opisBtns, 'кат.', 'dodajOpis("категоризація")', kl,
'Виправлена/додана категоризація');
przyciskiDodaj(opisBtns, 'шаб.', 'dodajOpis("шаблон")', kl,
'Виправлено/додано шаблон');
przyciskiDodaj(opisBtns, 'на вилуч.', 'dodajOpis("на вилучення")', kl,
'Сторінка запропонована на вилучення');
przyciskiDodaj(opisBtns, 'доп.', 'dodajOpis("доповнення")', kl,
'Додані нові відомості');
przyciskiDodaj(opisBtns, 'зображення', 'dodajOpis("зображення")', kl,
'Розміщене зображення');
przyciskiDodaj(opisBtns, 'онов.', 'dodajOpis("оновлення даних")', kl,
'Оновлені застарілі дані');
przyciskiDodaj(opisBtns, 'лінки', 'dodajOpis("зовнішні посилання")', kl,
'Додано/виправлено зовнішні посилання');
}
}
/*
Параметри:
* elUserBtns - контейнер, до якого додати клавішу
* pTekst - текст всередині клавіші
* pAkcja - дія (в текстовій формі), яку виконати при натисканні; може бути ряд команд
* pKlasa - клас, якщо потрібно
* pOpis - опис, що видно на підказці клавіші
*/
function przyciskiDodaj(elUserBtns, pTekst, pAkcja, pKlasa, pOpis) {
var nowyBtn = document.createElement('a');
// атрибути
nowyBtn.appendChild(document.createTextNode(pTekst));
nowyBtn.title = pOpis;
if (pKlasa != '')
nowyBtn.className = pKlasa
;
nowyBtn.onclick = new Function(pAkcja);
// додання клавіші
elUserBtns.appendChild(nowyBtn);
}
function dodajOpis(opis) {
var wpS = document.editform.wpSummary;
if (wpS.value != '' && wpS.value.charAt(wpS.value.length-2) != '/')
{
wpS.value += ', ' + opis
}
else
{
wpS.value += opis
}
}
$(przyciskiOpis);