User:Jeblad/external-articles-dev-v0.2/script.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
var marker = 'external-article';
var agent = 'Gadget/ExternalArticle (0.2)';
var entity = null;
var domains = {
snl: {
encyclopedia: 'Store norske leksikon',
description: 'Oppslagsverk av allmenn karakter',
url: 'https://snl.no/',
autocheck: true,
property: 'P4342'
},
nbl: {
encyclopedia: 'Norsk biografisk leksikon',
description: 'Oppslagsverk om kjente personer',
url: 'https://nbl.snl.no/',
categories: ['Menn','Kvinner'],
autocheck: true,
property: 'P5080'
},
nkl: {
encyclopedia: 'Norsk kunstnerleksikon',
description: 'Oppslagsverk om kunstnere',
url: 'https://nkl.snl.no/',
categories: ['Menn','Kvinner'],
autocheck: true,
property: 'P5081'
},
sml: {
encyclopedia: 'Store medisinske leksikon',
description: 'Oppslagsverk om medisin og helse',
url: 'https://sml.snl.no/',
autocheck: true,
property: 'P5082'
},
nb: {
encyclopedia: 'Naturbase',
description: 'Faktasamling om verneområder',
url: '',
autocheck: true,
property: 'P1732'
}
};
$( function (){
if (mw.config.get('wgNamespaceNumber') !== 0)
return;
var createId = function( key ) { return 't-'+key+'-search'; };
var order = Object.keys(domains).sort( function(a, b) { return a.encyclopedia < b.encyclopedia } );
mw.log( marker, order );
for ( var i=0,l=order.length; i<l; i++ ) {
var key = order[i];
var domain = domains[key];
domain.id = createId( key );
domain.key = key;
mw.util.addPortletLink(
"p-query",
"#",
domain.encyclopedia,
domain.id,
domain.description,
null,
null
);
$( '#'+domain.id ).addClass( 'unconnected' );
}
});