MediaWiki:Gadget-edit-first-section.js
Wygląd
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.
/*
== Dodanie linka [edytuj] dla sekcji nagłówkowej ==
; Pomysł: [[:en:User:Pile0nades]]
; Autorzy:
: Maciej Jaros [[:pl:User:Nux]]
: Skalee [[:pl:User:Skalee]]
: [[:pl:User:Matma Rex]]
<nowiki>
*/
/* global mw, jQuery */
(function ($) {
// Liczba nagłówków drugiego, trzeciego i czwartego stopnia
// jakie muszą się pojawić w artykule, żeby pojawił się link
window.addEditTopLinkNumHeaders = 2; // dla 2 => dla dwóch i więcej się pojawi
// Link do edycji sekcji wstępnej (nr=0).
function addTopEdit() {
let editUrl = $('#ca-edit, #ca-viewsource').find('a').attr('href');
if (editUrl === undefined || $('h2,h3,h4').length < window.addEditTopLinkNumHeaders) {
return;
}
let sibling = document.querySelector('#firstHeading .mw-page-title-main');
if (sibling) {
// Edit link
sibling
.insertAdjacentHTML("afterend", ''
+`<span class="mw-editsection first-editsection" aria-hidden="true">`
+ `<span aria-hidden="true" class="mw-editsection-bracket">[</span>`
+ `<a href="${editUrl}§ion=0" title="edytuj sekcję nagłówkową artykułu">edytuj wstęp</a>`
+ `<span aria-hidden="true" class="mw-editsection-bracket">]</span>`
+`</span>`
)
;
}
}
// Główny init (po załadowaniu strony).
function init() {
addTopEdit();
// WCAG, skip-link (do przenisienia do dedykowanego gadgetu... może)
let preSkip = document.querySelector('#firstHeading');
if (preSkip) preSkip
.insertAdjacentHTML("afterend", '<a class="mw-jump-link gdgt-edit-first-section" href="#mw-content-text">Przejdź do treści</a>')
;
}
// Check if should init
if (mw.config.get('wgIsArticle') &&
mw.config.get('wgAction') === 'view' &&
['vector', 'vector-2022', 'monobook'].indexOf( mw.config.get('skin') ) > -1) {
// There was additional condition, but I can't believe it's needed any longer:
// somehow it gets run twice on some pages - stop that
// !window.addEditTopLinkDone) {
// window.addEditTopLinkDone = true;
$(init);
}
})(jQuery);
// </nowiki>









