MediaWiki:Gadget-sk-loader.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.
(function() {
var loaded = false;
var logTag = '[wp_sk_loader]';
mw.hook('userjs.wp_sk.loaded').add(function(wp_sk){
console.log(logTag, 'wp_sk.loaded');
loaded = true;
});
mw.hook('userjs.wp_sk.ready').add(function(wp_sk){
console.log(logTag, 'wp_sk.ready');
});
function load_wp_sk() {
if (loaded) {
return;
}
console.log(logTag, 'load_wp_sk deps start');
mw.loader.using("ext.gadget.lib-toolbar, ext.gadget.lib-sel_t, mediawiki.util".split(/, ?/)).then(function() {
console.log(logTag, 'load_wp_sk deps done');
if (loaded) {
return;
}
console.log(logTag, 'load_wp_sk sk start');
mw.loader.load('https://pl.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-sk-local.js');
mw.loader.load('https://pl.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-sk.js');
});
}
function load_wp_sk_ve() {
if (loaded) {
return;
}
mw.loader.load('https://pl.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-sk-ve.js');
mw.hook('userjs.wp_sk.ve_sk.loaded').add((WpSkVisualCode) => {
var ve_sk = new WpSkVisualCode();
if (typeof wp_sk != 'object') {
mw.loader.load('https://pl.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-sk-local.js');
mw.loader.load('https://pl.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-sk.js');
}
mw.hook('userjs.wp_sk.loaded').add((wp_sk) => {
ve_sk.init(wp_sk);
});
});
}
// load on standard edit
var mwwgAction = mw.config.get('wgAction');
if (mwwgAction == 'edit' || mwwgAction == 'submit') {
var mwwgModel = mw.config.get('wgPageContentModel');
console.log(logTag, 'action trigger:', mwwgAction, mwwgModel);
if (mwwgModel === 'wikitext') {
load_wp_sk();
}
}
// load on VE edit (VE code editor)
// mw.hook( 've.activationComplete' ).add( function (a,b,c) {
// console.log(logTag, 'activationComplete trigger', {a,b,c});
// load_wp_sk();
// });
mw.hook( 've.activationComplete' ).add( () => {
var surface = ve.init.target.getSurface();
// Source mode
if ( surface.getMode() === 'source' ) {
load_wp_sk_ve();
}
});
})();