MediaWiki:Gadget-FastDelete.js: Różnice pomiędzy wersjami

Z Nonsensopedii, polskiej encyklopedii humoru
M
Znacznik: edytor źródłowy
 
(Nie pokazano 23 wersji utworzonych przez 8 użytkowników)
Linia 1: Linia 1:
if (!window.edButtons) {
/**
window.edButtons = [{summary: "[[Nonsensopedia:Spam|Spam]]", name: "Spam"}, {summary: "[[Nonsensopedia:Prywata|Prywata]]", name: "Prywata"}, {summary: "[[Nonsensopedia:Bo tak|Bo tak]]", name: "Bo tak"}, {summary: "Wynik głosowania na [[Nonsensopedia:Strony do usunięcia|SDU]]", name: "SDU"}];
* Ajax Fast Delete
}
* @author Grunny
/* Ajax Fast Delete
* @version 2.1
inspired by https://dev.wikia.com/wiki/MediaWiki:FastDelete/code.js
* @notes Original FastDelete code was written by Splarka, and later modified by uberfuzzy and Grunny.
Author: Sir Polskacafe
*
Works with cologneblue, modern, (dark)vector, monobook
** <pre><nowiki> */
*/
function fastDelete() {
var fdButtons = [];
"use strict";
fdButtons[fdButtons.length] = {
if (!window.edButtons || $('#ca-delete').lenght || mw.config.get("wgNamespaceNumber") === -1) {
'summary': '[[Nonsensopedia:Spam|Spam]]',
return;
'label': 'Spam'
}
};
var skin = mw.config.get("skin");
fdButtons[fdButtons.length] = {
switch(skin) {
'summary': '[[Nonsensopedia:Prywata|Prywata]]',
case 'vector':
'label': 'Prywata'
for (var i = 0; i < edButtons.length; i++)
};
$('#p-views .vector-menu-content-list').prepend('<li class="edButton collapsible"><span><a title="Usuń z powodem: '+ window.edButtons[i].summary + '" data-summary="' + window.edButtons[i].summary + '" data-id="edButton">'+window.edButtons[i].name+'</a></span></li>');
fdButtons[fdButtons.length] = {
break;
'summary': '[[Nonsensopedia:Bo tak|Bo tak]]',
case 'monobook':
'label': 'Bo tak'
for (var i = 0; i < edButtons.length; i++) $('#p-cactions > .pBody > ul').append('<li class="edButton"><a title="Usuń z powodem: '+ window.edButtons[i].summary + '" data-summary="' + window.edButtons[i].summary + '" data-id="edButton">'+window.edButtons[i].name+'</a></li>');
};
break;
fdButtons[fdButtons.length] = {
case 'timeless':
'summary': 'Wynik głosowania na [[Nonsensopedia:Strony do usunięcia|SDU]]',
for (var i = 0; i < edButtons.length; i++) $('#p-cactions > .mw-portlet-body > ul').append('<li class="edButton"><a title="Usuń z powodem: '+ window.edButtons[i].summary + '" data-summary="' + window.edButtons[i].summary + '" data-id="edButton">'+window.edButtons[i].name+'</a></li>');
'label': 'SDU'
break;
};
}
$("a[data-id='edButton']").css('color', 'red').css('font-weight', 'bold');
$('a[data-id="edButton"]').click(function(){
if (!confirm("Czy chcesz usunąć tę stronę?")) { return; }
(new mw.Api())
.post({
action: 'delete',
title: mw.config.get('wgPageName'),
reason: $(this).attr('data-summary'),
token: mw.user.tokens.get('csrfToken')
})
.done(function (res) {
location.reload();
});});
}


jQuery(document).ready(fastDelete);
( function( $ ) {
"use strict";
// Don't load twice...
if ( typeof window.wkAjaxFastDelete !== 'undefined' ) {
return false;
}
window.wkAjaxFastDelete = {
version: '2.1',
init: function() {
if ( wgNamespaceNumber === -1 || !window.fdButtons ) {
return;
}
var deleteButtons = '';
switch( skin ) {
case 'awesome': /* you really shouldnt even have this value... */
case 'monaco_old': /* really, where are you getting these skin settings from... */
case 'monaco':
if( !$( '#ca-delete' ).length ) {
return;
}
for( var i = 0; i < fdButtons.length; i++ ) {
deleteButtons += '<li><img src="http://images1.wikia.nocookie.net/common/skins/common/blank.gif" class="sprite delete fastdelete" /><a style="cursor: pointer;" rel="nofollow" title="Ajax delete: ' + fdButtons[i].summary + '" data-summary="' + fdButtons[i].summary + '" data-id="fastdelete">'+ fdButtons[i].label + '</a></li>';
}
$( '#page_controls' ).append( deleteButtons );
break;
case 'uncyclopedia':
case 'wowwiki':
case 'lostbook':
case 'monobook':
if( !$( '#ca-delete' ).length ) {
return;
}
for( var i = 0; i < fdButtons.length; i++ ) {
deleteButtons += '<li><a style="cursor: pointer;" title="Ajax delete: ' + fdButtons[i].summary + '" data-summary="' + fdButtons[i].summary + '" data-id="fastdelete">' + fdButtons[i].label + '</a></li>';
}
$( '#p-cactions > .pBody > ul' ).append( deleteButtons );
break;
case 'oasis':
case 'wikia':
if( !$( 'a[data-id="delete"]' ).length ) {
return;
}
for( var i = 0; i < fdButtons.length; i++ ) {
deleteButtons += '<a class="wikia-button" title="one-click delete: ' + fdButtons[i].summary + '" data-summary="' + fdButtons[i].summary + '" data-id="fastdelete">' + fdButtons[i].label + '</a>&nbsp;';
}
switch( wgNamespaceNumber ) {
case 1:
case 5:
case 7:
case 9:
case 11:
case 13:
case 14:
case 15:
case 111:
case 401:
$( 'header.WikiaPageHeader > h2' ).before( deleteButtons );
break;
case 2:
case 3:
if( $( '#UserProfileMasthead' ).length ) {
$( 'div.UserProfileActionButton' ).append( deleteButtons );
} else {
$( 'div.WikiaUserPagesHeader > ul.wikia-avatar' ).after( deleteButtons );
}
break;
case 500:
case 502:
$( 'div.WikiaUserPagesHeader > h1' ).after( deleteButtons );
break;
default:
$( 'header.WikiaPageHeader' ).append( deleteButtons );
break;
}
break;
}
if( $( 'a[data-id="fastdelete"]' ).length ) {
$( 'a[data-id="fastdelete"]' ).click( function () {
wkAjaxFastDelete.ajaxDeleteAPage( $( this ).attr( 'data-summary' ) );
} );
}
},
ajaxDeleteAPage: function ( deleteReason ) {
var url = wgServer + wgScriptPath + '/api.php?action=query&prop=info&intoken=delete&titles=' + encodeURIComponent( wgPageName ) + '&format=json';
$.getJSON( url, function( data ) {
var editToken = data.query.pages[wgArticleId].deletetoken,
url = wgServer + wgScriptPath + '/api.php?action=delete&title=' + encodeURIComponent( wgPageName ) + '&reason=' + encodeURIComponent( deleteReason ) + '&format=json&token=' + encodeURIComponent( editToken );
$.post( url, function() {
document.location.reload();
} );
} );
}
};
$(document).ready( wkAjaxFastDelete.init );
}( jQuery ) );
//</nowiki></pre>

Aktualna wersja na dzień 02:42, 18 cze 2022

if (!window.edButtons) {
	window.edButtons = [{summary: "[[Nonsensopedia:Spam|Spam]]", name: "Spam"}, {summary: "[[Nonsensopedia:Prywata|Prywata]]", name: "Prywata"}, {summary: "[[Nonsensopedia:Bo tak|Bo tak]]", name: "Bo tak"}, {summary: "Wynik głosowania na [[Nonsensopedia:Strony do usunięcia|SDU]]", name: "SDU"}];
} 
/* Ajax Fast Delete
inspired by https://dev.wikia.com/wiki/MediaWiki:FastDelete/code.js
Author: Sir Polskacafe
Works with cologneblue, modern, (dark)vector, monobook
*/
function fastDelete() {
    "use strict";
    if (!window.edButtons || $('#ca-delete').lenght || mw.config.get("wgNamespaceNumber") === -1) {
    	return;
    }
    var skin = mw.config.get("skin");
    switch(skin) {
    	case 'vector':
    		for (var i = 0; i < edButtons.length; i++)
    			$('#p-views .vector-menu-content-list').prepend('<li class="edButton collapsible"><span><a title="Usuń z powodem: '+ window.edButtons[i].summary + '" data-summary="' + window.edButtons[i].summary + '" data-id="edButton">'+window.edButtons[i].name+'</a></span></li>');
    		break;
    	case 'monobook':
    		for (var i = 0; i < edButtons.length; i++)  $('#p-cactions > .pBody > ul').append('<li class="edButton"><a title="Usuń z powodem: '+ window.edButtons[i].summary + '" data-summary="' + window.edButtons[i].summary + '" data-id="edButton">'+window.edButtons[i].name+'</a></li>');
    		break;
        case 'timeless':
            for (var i = 0; i < edButtons.length; i++) $('#p-cactions > .mw-portlet-body > ul').append('<li class="edButton"><a title="Usuń z powodem: '+ window.edButtons[i].summary + '" data-summary="' + window.edButtons[i].summary + '" data-id="edButton">'+window.edButtons[i].name+'</a></li>');
    		break;
}
    $("a[data-id='edButton']").css('color', 'red').css('font-weight', 'bold');
    $('a[data-id="edButton"]').click(function(){
    	if (!confirm("Czy chcesz usunąć tę stronę?")) { return; }
    	(new mw.Api())
                    .post({
                        action: 'delete',
                        title: mw.config.get('wgPageName'),
                        reason: $(this).attr('data-summary'),
                        token: mw.user.tokens.get('csrfToken')
                    })
                    .done(function (res) {
                        location.reload();
                    });});
}

jQuery(document).ready(fastDelete);