MediaWiki:Editpage2.js
[http://www.wikizamki.org/links.htm]
Замечание: Чтобы после сохранения сделанные изменения вступили в силу, очистите кеш своего браузера: Mozilla / Firefox: Ctrl+Shift+R, IE: Ctrl+F5, Safari: Cmd+Shift+R, Konqueror: F5, Opera: через меню Tools→Preferences.
importScript('MediaWiki:Wikificator.js') //Toolbar buttons function StandardButtons(){ if (mwEditButtons.length < 6) return mwEditButtons[5].tagClose = '|thumb]]' } function CustomButtons(){ var u = 'http://upload.wikimedia.org/' addCustomButton(u+'wikipedia/ru/1/1d/Button_redirect_rus.png', 'Перенаправление','#REDIRECT [[',']]','название страницы') addCustomButton(u+'wikisource/ru/a/a6/Button-cat.png','Категория','[\[Категория:',']]\n','') addCustomButton(u+'wikipedia/en/3/34/Button_hide_comment.png', 'Комментарий', '<!-- ', ' -->', 'Комментарий') addCustomButton(u+'wikipedia/en/f/fd/Button_blockquote.png', 'Развёрнутая цитата', '<blockquote>\n', '\n</blockquote>', 'Развёрнутая цитата одним абзацем') addCustomButton(u+'wikipedia/en/6/60/Button_insert_table.png', 'Вставить таблицу', '{| class="wikitable"\n|', '\n|}', '-\n! заголовок 1\n! заголовок 2\n! заголовок 3\n|-\n| строка 1, ячейка 1\n| строка 1, ячейка 2\n| строка 1, ячейка 3\n|-\n| строка 2, ячейка 1\n| строка 2, ячейка 2\n| строка 2, ячейка 3') addCustomButton(u+'wikipedia/commons/7/79/Button_reflink.png','Сноска','<ref>','</ref>','') addFuncButton(u+'wikisource/ru/d/d1/Button-wikifikator.png', 'Викификатор', function(){Wikify()}) addFuncButtonNew(u+'wikipedia/commons/thumb/b/b5/Wikify_button.svg/22px-Wikify_button.svg.png', 'Викификатор', function(){Wikify()}) } function addCustomButton(img, tip, open, close, sample){ mwCustomEditButtons[mwCustomEditButtons.length] = {'imageFile':img, 'speedTip':tip, 'tagOpen':open, 'tagClose':close, 'sampleText':sample} } function addFuncButton(img, tip, func){ var toolbar = document.getElementById('toolbar') if (!toolbar) return var i = document.createElement('img') i.src = img i.alt = tip; i.title = tip i.onclick = func i.style.cursor = 'pointer' toolbar.appendChild(i) } function addFuncButtonNew(img, tip, func){ // via putnik var toolbar = document.getElementById('edittoolbar') if (!toolbar) return var div = document.createElement('div') div.className='group first' var i = document.createElement('input') i.className='tool' i.type='image' i.src = img i.alt = tip; i.title = tip div.appendChild(i) toolbar.appendChild(div) } //Edit Summary buttons function SummaryButtons(){ var wpSummary = document.getElementById('wpSummary') if (!wpSummary || (wpSummary.form.wpSection && wpSummary.form.wpSection.value == 'new')) return wpSummaryBtn = document.createElement('span') //global var wpSummaryBtn.id = 'userSummaryButtonsA' wpSummary.parentNode.insertBefore(wpSummaryBtn, wpSummary.nextSibling) wpSummary.parentNode.insertBefore(document.createElement('br'), wpSummary.nextSibling) addSumButton('викиф.', 'викификация', 'Произведена викификация') addSumButton('оформл.', 'оформление', 'Улучшено оформление') addSumButton('стиль', 'стилевые правки', 'Поправлен стиль изложения') addSumButton('орфогр.', 'орфография', 'Поправлена орфография') addSumButton('пункт.', 'пунктуация', 'Изменена пунктуация') addSumButton('интервики', 'интервики', 'Исправлены межъязыковые ссылки (интервики)') addSumButton('кат.', 'категория', 'Исправлена категоризация') addSumButton('шаб.', 'шаблон', 'Добавлен / изменён шаблон') addSumButton('к удал.', 'к удалению', 'Страница предложена к удалению') addSumButton('доп.', 'дополнение', 'Добавлены новые сведения') addSumButton('иллюстрация', 'иллюстрация', 'Размещена иллюстрация') addSumButton('обнов.', 'обновление данных', 'Обновлены устаревшие данные') } function addSumButton(name, text, title) { var btn = document.createElement('a') btn.appendChild(document.createTextNode(name)) btn.title = title btn.onclick = function(){insertSummary(text)} wpSummaryBtn.appendChild(btn) } function insertSummary(text) { var wpSummary = document.getElementById('wpSummary') if (wpSummary.value.indexOf(text) != -1) return if (wpSummary.value.match(/[^,; \/]$/)) wpSummary.value += ',' if (wpSummary.value.match(/[^ ]$/)) wpSummary.value += ' ' wpSummary.value += text } //call functions addOnloadHook(StandardButtons) addOnloadHook(CustomButtons) addOnloadHook(SummaryButtons) //sig reminder if (wgNamespaceNumber % 2 || wgNamespaceNumber==4) addOnloadHook(function (){ var cp = document.getElementById('editpage-copywarn') var wpSave = document.getElementById('wpSave') if (!cp || !wpSave) return if (wgNamespaceNumber == 4 && (!wgTitle.match('^(Форум[/ ]|Голосования/|Опросы/|Обсуждение правил/|Заявки на .*/|Запросы.|Кандидаты в .*/|К (удалению|объединению|переименованию|разделению|улучшению)/|Проверка участников/)') || wgTitle.match ('/Архив'))) return var ins = ' <a href=\'javascript:insertTags(" ~~\~~\","","")\'>~~\~~</a>' cp.innerHTML += ' Не забудьте добавить к вашему сообщению подпись с помощью' + ins if (wgUserGroups && wgUserGroups.join().indexOf('autoconfirmed') != -1 && !window.sigWarning) return //unreg/new users only var warningDone = false wpSave.onclick = function(){ try{ if (warningDone || document.editform.wpTextbox1.value.indexOf('~~\~~') >= 0 ) return true warningDone = true cp.innerHTML = 'Пожалуйста, <b>подпишитесь</b>, добавив в конце своего сообщения' + ins + ' (<a href="' + wgArticlePath.replace(/\$1/, 'Википедия:Подписывайтесь') + '" title="(ссылка откроется в новом окне)" target=_blank>подробнее ↗</a>)'//→ ↗ cp.style.background = '#FFD080' cp.style.border = '1px solid orange' return false }catch(e) {return true} } })