Участник:Хикки-задрот/commonuserjs

Материал из Lurkmore
Перейти к навигации Перейти к поиску

//

if(wgPageName == "Служебная:AbuseFilter") {
	$('td.TablePager_col_af_hit_count > a').each(function() {
		$(this).attr('href',$(this).attr('href')+'&curhitcount='+/^(\d+)\D/.exec($(this).text())[1])
	});
}

function cleanupBanPublic() {
    $.get('/index.php', { title: 'Lurkmore:Ban/public', action: 'edit' }, function (xml) {
        var form = $('#editform', xml)[0];
        if (form) $.post(form.action, { wpStarttime: form.wpStarttime.value, wpEdittime: form.wpEdittime.value, wpEditToken: form.wpEditToken.value, wpTextbox1: '<noinclude>{{:Lurkmore:Ban/public/Верх}}\n<!-- Формат жалобы:\n* [http://lurkmore.ru/дифф_некошерной_правки] — описание причины жалобы (тупой реф, страйк, вандализм, иной из сотен возможных вариантов идиотизма).\n--></noinclude>' }, function () {
            alert('Публичная баня очищена');
        });
    });
}

function nuke() {
    var ips = $('#bodyContent p').text().match(/\d+\.\d+\.\d+\.\d+/g);
    var count = 0;
    var blocked = 0;
    $('<p class="nukeProgress">Понеслась</p>').insertBefore('#bodyContent p');
    $.get('/api.php', { action: 'query', prop: 'info', intoken: 'block', titles: 'Участник:Хикки-задрот' }, function (xml) {
        var token = $('page', $(xml).text()).attr('blocktoken');
        for (var i = 0 in ips) $.post('/api.php', { action: 'block', user: ips[i], token: token, expiry: 'infinite', reason: 'Прокси/[[Tor]] (Yes, it IS a legitimate reason!)', anononly: '1' }, function (xml) {
            count++;
            var error = $('error', $(xml).text());
            if (error[0]) if (error.attr('code') == 'alreadyblocked') blocked++;
            $('.nukeProgress').text('Готово:' + count + ' из ' + ips.length + ' (повторных:' + blocked + ')');
        });
    });
}

function deletePage(reason) {
    $.get('/index.php', { title: wgPageName, action: 'delete' }, function (xml) {
        var form = $('#deleteconfirm', xml)[0];
        if (form) $.post(form.action, { wpEditToken: form.wpEditToken.value, wpReason: reason }, function () {
            alert('Удалено');
        });
    });
}

function deleteTalkpage() {
    deletePage('Здесь было осуждение статьи-смертника, либо вообще ничего не было');
}

function deleteRedirect() {
    deletePage('Говноредиректы не нужны');
}

if (wgPageName == 'Lurkmore:Ban') $('#p-cactions ul').append('<li><a onclick="cleanupBanPublic()" style="color:red;cursor:pointer">Очистить</a></li>');
if (wgPageName.match(/Обсуждение/)) $('#p-cactions ul').append('<li><a onclick="deleteTalkpage()" style="color:red;cursor:pointer">Удалить</a></li>');
if ($('#bodyContent span').hasClass('redirectText')) $('#p-cactions ul').append('<li><a onclick="deleteRedirect()" style="color:red;cursor:pointer">Говноредирект</a></li>');
if (wgPageName.match(/Хикки-задрот\/Полигон/)) $('#p-cactions ul').append('<li><a onclick="nuke()" style="color:red;cursor:pointer">Нюк</a></li>');
//