MediaWiki:Gadget-wikidata-id.js

Notă: După salvare, trebuie să treceți peste cache-ul browser-ului pentru a vedea modificările.

  • Mozilla, Google Chrome, Safari, Konqueror: țineți apăsat Shift în timp ce apăsați butonul Reload (sau apăsați Ctrl-Shift-R).
  • Internet Explorer: apăsați Ctrl-F5.
  • Opera: apăsați F5.
function add_id (wikidata_id, label) {
	var headingElem = document.getElementById('firstHeading');
    var id_elem = document.createElement('small');
    id_elem.style.color = "gray";
    id_elem.style.fontSize = "18px";
    if (label != wikidata_id) link_text = wikidata_id + "/" + label;
    else link_text = wikidata_id;
    id_elem.innerHTML = " (<a href=\"https://www.wikidata.org/wiki/" + wikidata_id + "\" style=\"color: gray; text-decoration: underline\">" + link_text + "</a>)";

    headingElem.appendChild(id_elem);
}

function wikidata_id () {
	var curlang = mw.config.get( 'wgUserLanguage' ) || 'ro' ;
	var wikidata_id = mw.config.get( 'wgWikibaseItemId' ) ;
	if ( wikidata_id === undefined ) return ;
	
	$.getJSON ( '//www.wikidata.org/w/api.php?action=wbgetentities&format=json&props=labels&ids='+wikidata_id+'&languages='+curlang+'&callback=?' , function ( d ) {
		$.each ( d.entities||[] , function ( q , v ) {
			if ( v.labels === undefined ) { add_id(wikidata_id, wikidata_id); return ; }
			if ( v.labels[curlang] === undefined ) { add_id(wikidata_id, wikidata_id); return ; }
			
			var label = v.labels[curlang].value ;
			add_id(wikidata_id, label);
		} ) ;
	} ) ;
}

$ ( wikidata_id )