MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
No edit summary Tag: Reverted |
No edit summary Tag: Reverted |
||
| Line 21: | Line 21: | ||
const entityId = mw.config.get('wgTitle'); | const entityId = mw.config.get('wgTitle'); | ||
const propertyId = 'P187'; /*ID of the property "Dariah.lab ID"*/ | const propertyId = 'P187'; /*ID of the property "Dariah.lab ID"*/ | ||
var lastEdit = ''; | |||
var dariahLabID = ''; | |||
$.getJSON(mw.util.wikiScript('api'), { | $.getJSON(mw.util.wikiScript('api'), { | ||
| Line 31: | Line 33: | ||
var pages = data.query.pages; | var pages = data.query.pages; | ||
var page = pages[Object.keys(pages)[0]]; | var page = pages[Object.keys(pages)[0]]; | ||
if (page && page.revisions && page.revisions.length > 0) { | if (page && page.revisions && page.revisions.length > 0) { | ||
lastEdit = new Date(page.revisions[0].timestamp).toLocaleString(); | lastEdit = new Date(page.revisions[0].timestamp).toLocaleString(); | ||
} | } | ||
}); | |||
$.getJSON(mw.util.wikiScript('api'), { | |||
action: 'wbgetentities', | |||
ids: entityId, | |||
format: 'json', | |||
props: 'claims' | |||
}, function (data2) { | |||
const entity = data2.entities[entityId]; | |||
const claims = entity?.claims?.[propertyId]; | |||
if (claims && claims.length > 0) { | |||
dariahLabID = claims[0].mainsnak.datavalue.value; | |||
} | |||
const message = `${pageName}, <a href="http://hdl.handle.net/${dariahLabID}" target="_blank">http://hdl.handle.net/${dariahLabID}</a>, [ostatnia edycja strony: ${lastEdit}, dostęp].`; | const message = `${pageName}, <a href="http://hdl.handle.net/${dariahLabID}" target="_blank">http://hdl.handle.net/${dariahLabID}</a>, [ostatnia edycja strony: ${lastEdit}, dostęp].`; | ||
$('<div class="global-site-message">' + message + '</div>').prependTo('#content'); | |||
}); | }); | ||
} | } | ||
}); | }); | ||
Revision as of 13:34, 24 May 2025
/* Any JavaScript here will be loaded for all users on every page load. */
$(function () {
const namespace = mw.config.get('wgNamespaceNumber');
/* Prepare information about current Namespace Number; namespace_info can be added to the message below and displayed on all of the pages.*/
/*
var namespace_info = 'ID obecnego namespace: ' + namespace;
*/
/* Add a message to all of the pages regardless of the Namespace Number.*/
/*
var message = 'Referując do WikiHum należy używać <b>identyfikatorów Dariah.lab</b> (ang. Dariah.lab. ID).';
$('<div class="global-site-message">' + message + '</div>')
.prependTo('#content');
*/
if( namespace === 120 ){
const pageName = mw.config.get('wgPageName');
const entityId = mw.config.get('wgTitle');
const propertyId = 'P187'; /*ID of the property "Dariah.lab ID"*/
var lastEdit = '';
var dariahLabID = '';
$.getJSON(mw.util.wikiScript('api'), {
action: 'query',
prop: 'revisions',
titles: pageName,
rvprop: 'timestamp',
format: 'json'
}, function (data) {
var pages = data.query.pages;
var page = pages[Object.keys(pages)[0]];
if (page && page.revisions && page.revisions.length > 0) {
lastEdit = new Date(page.revisions[0].timestamp).toLocaleString();
}
});
$.getJSON(mw.util.wikiScript('api'), {
action: 'wbgetentities',
ids: entityId,
format: 'json',
props: 'claims'
}, function (data2) {
const entity = data2.entities[entityId];
const claims = entity?.claims?.[propertyId];
if (claims && claims.length > 0) {
dariahLabID = claims[0].mainsnak.datavalue.value;
}
const message = `${pageName}, <a href="http://hdl.handle.net/${dariahLabID}" target="_blank">http://hdl.handle.net/${dariahLabID}</a>, [ostatnia edycja strony: ${lastEdit}, dostęp].`;
$('<div class="global-site-message">' + message + '</div>').prependTo('#content');
});
}
});