Wikipedysta:Matma Rex/prettyref.js
Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.
- Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
- Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
- Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5.
- Opera: Naciśnij klawisze Ctrl+F5.
// To narzędzie przenosi zawartość przypisów na koniec strony, pozostawiając
// w tekście głównym tylko odwołanie. Skutkiem ubocznym tej operacji jest
// zamiana szablonów "R"/"U" na znaczniki <ref> oraz "Przypisy" na <references>.
//
// Źródła: https://github.com/MatmaRex/prettyref
// https://github.com/PeterBowman/wikibot (adaptacja, obecnie w użyciu)
// Interfejs: https://pbbot.toolforge.org/pretty-ref
//
// Użycie: dodaj
// importScript("Wikipedysta:Matma Rex/prettyref.js");
// do swojego common.js.
//
// W pasku narzędzi pojawi się nowy przycisk ze słowem "ref".
// Kliknij, aby dokonała się magia.
//
// UWAGA: narzędzie nie współpracuje z gadżetem wikEd!
//
// Autorzy: Matma Rex, Peter Bowman (adaptacja), CC-BY-SA 3.0.
// Błędy prosimy zgłaszać do [[User talk:Peter Bowman]].
( function ( mw, $ ) {
var $wpTextbox1, $wpSummary;
function prettyref_run() {
$( '#mw-editbutton-prettyref' ).attr( 'src', '//upload.wikimedia.org/wikipedia/commons/4/42/Loading.gif' );
$.ajax( {
url: location.protocol + '//pbbot.toolforge.org/pretty-ref',
type: 'POST',
cache: false,
data: {
text: $wpTextbox1.val(),
format: 'json'
},
success: prettyref_callback
} );
}
function prettyref_callback( json ) {
// http://bugs.jquery.com/ticket/10338
if ( typeof json === 'string' ) {
json = JSON.parse( json );
}
if ( json.status !== 200 ) {
if ( json.error === 'no refs section present?' ) {
alert( 'Nie odnaleziono sekcji z przypisami.' );
} else {
alert( 'Błąd (' + json.status + '): ' + json.error +
'. Przypisy na tej stronie są nieprawidłowo sformatowane lub wykorzystują konstrukcje, które jeszcze nie są obsługiwane.' +
'\n\n\nDodatkowe informacje (debug):\n' + json.backtrace );
}
} else {
$wpTextbox1.textSelection( 'setContents', json.content );
$wpSummary.val( $wpSummary.val() + ', [[Wikipedysta:Matma_Rex/prettyref.js|przeniesienie refów na koniec]]' );
$wpSummary.val( $wpSummary.val().replace( /(^|\/\*.+?\*\/ ?), /, '$1' ) );
alert( 'OK. Przed zapisaniem sprawdź wykonane zmiany!' );
}
$( '#mw-editbutton-prettyref' ).attr( 'src', '//upload.wikimedia.org/wikipedia/commons/2/2b/Button_ref_inscription.png' );
}
if ( [ 'edit', 'submit' ].indexOf( mw.config.get( 'wgAction' ) ) !== -1 ) {
$.when(
mw.loader.using( [ 'jquery.textSelection', 'ext.gadget.lib-toolbar' ] ),
$.ready
).done( function () {
$wpTextbox1 = $( '#wpTextbox1' );
$wpSummary = $( '#wpSummary' );
toolbarGadget.addButton( {
title: 'Przenieś refy na koniec',
alt: '{{r',
id: 'mw-editbutton-prettyref',
icon: '//upload.wikimedia.org/wikipedia/commons/2/2b/Button_ref_inscription.png',
onclick: function () {
prettyref_run();
}
} );
} );
}
}( mediaWiki, jQuery ) );