MediaWiki:Gadget-common-special-abusefilter.js
Перейти к навигации
Перейти к поиску
JS-код ниже относится к скрытому гаджету common-special-abusefilter. Он включён по умолчанию.
После сохранения или недавних изменений очистите кэш браузера.
// Не удаляйте проверку на название спецстраниц
( function() {
if ( ![ 'AbuseFilter', 'AbuseLog' ].includes( mw.config.get( 'wgCanonicalSpecialPageName' ) ) ) {
return;
}
mw.loader.using( 'mediawiki.util' ).done(function () {
mw.util.addCSS( 'tr.mw-abusefilter-list-disabled td.TablePager_col_af_public_comments * {opacity:0.5}' );
});
if ( /\/examine\//.test(document.URL) ) {
mw.loader.using('mediawiki.util').done(function () {
mw.util.addCSS(
'\
.mw-abuselog-var tt {font-weight:bold}\
.mw-abuselog-details-summary td.mw-abuselog-var-value div {background-color: #CCCCFF}\
tr.mw-abuselog-details-added_lines td div,\
tr.mw-abuselog-details-added_links td div\
{background-color: #CFC}\
.mw-abuselog-details-removed_lines td div,\
.mw-abuselog-details-removed_links td div\
{background-color: #FCC}\
tr.mw-abuselog-details-new_html td.mw-abuselog-var-value,\
tr.mw-abuselog-details-new_text td.mw-abuselog-var-value,\
tr.mw-abuselog-details-new_wikitext td.mw-abuselog-var-value\
{background-color: #EFE}\
.mw-abuselog-details-old_html td.mw-abuselog-var-value,\
.mw-abuselog-details-old_text td.mw-abuselog-var-value,\
.mw-abuselog-details-old_wikitext td.mw-abuselog-var-value\
{background-color: #FEE}\
div.mw-abuselog-edit-summary {font-style:italic}\
a[href*="&diff="] {font-weight:bold}'
);
//copy edit summary to the top
mw.util.$content
.find('tr.mw-abuselog-details-summary')
.find('div.mw-abuselog-var-value').clone()
.attr('class', 'mw-abuselog-edit-summary')
.insertBefore(mw.util.$content.find('table.diff'));
});
}
$(function () {
//select box: append values to descriptions; was: "Normalise", will be: "Normalise (norm)"
var key;
$('#wpFilterBuilder')
.find('option')
.each(function (i, opt) {
key = /^[a-z\d_]+/.exec(opt.value);
if (!key) return;
key = key[0];
if (opt.text.indexOf(key) == -1) opt.text = opt.text + ' (' + key + ')';
if (opt.title == '') opt.title = opt.value;
});
//text boxes: auto resize
$('#wpFilterRules, #wpFilterNotes, #wpTestFilter')
.keyup(autoResizeTBox)
.each(autoResizeTBox);
});
//400 px ix max height
function autoResizeTBox() {
var hh = Math.min(400, Math.max(this.scrollHeight, this.clientHeight));
if (hh > this.clientHeight) this.style.height = hh + 'px';
}
}() );