MediaWiki:Gadget-EdytujWNondanych.js: Różnice pomiędzy wersjami

Z Nonsensopedii, polskiej encyklopedii humoru
M
M (bugfix dla redlinków (nie pokazywała się zakładka))
Linia 4: Linia 4:
{
{
//przycisk "Edytuj w Nondanych"
//przycisk "Edytuj w Nondanych"
$("#ca-view").after("<li id='ca-nondaneEdit'><span><a href='https://dane.nonsa.pl/wiki/" + encodeURI(mw.config.get("wgPageName")) + "?action=formedit'>Edytuj w Nondanych</a></span></li>");
$("#ca-edit").before("<li id='ca-nondaneEdit'><span><a href='https://dane.nonsa.pl/wiki/" + encodeURI(mw.config.get("wgPageName")) + "?action=formedit'>Edytuj w Nondanych</a></span></li>");
//button pokazujący, czy dana strona została już uzupełniona w Nondanych
//button pokazujący, czy dana strona została już uzupełniona w Nondanych

Wersja z 13:31, 16 cze 2019

$(document).ready(function()
{
	if (mw.config.get("wgNamespaceNumber") == 108)
	{
		//przycisk "Edytuj w Nondanych"
		$("#ca-edit").before("<li id='ca-nondaneEdit'><span><a href='https://dane.nonsa.pl/wiki/" + encodeURI(mw.config.get("wgPageName")) + "?action=formedit'>Edytuj w Nondanych</a></span></li>");
		
		//button pokazujący, czy dana strona została już uzupełniona w Nondanych
		var tytul = mw.config.get("wgPageName").replace(/_/g, " ");
		var kodWypelnionej = "<img src='https://upload.wikimedia.org/wikipedia/commons/1/1e/Button_Icon_GreenForest.svg' width='20px' height='20px' style='padding: 0px 0px 3px 10px;' title='Ta strona została już uzupełniona w Nondanych'>";
		var kodNiewypelnionej = "<img src='https://upload.wikimedia.org/wikipedia/commons/0/07/Button_Icon_Red.svg' width='20px' height='20px' style='padding: 0px 0px 3px 10px;' title='Ta strona nie została jeszcze uzupełniona w Nondanych'>";
	
	    var api = new mw.ForeignApi("https://dane.nonsa.pl/api.php");
	    api.post(
	    {
	        action: 'ask',
	        format: 'json',
	        query: '[[Nie posiada typu strony Gry::true]] [[' + tytul + ']]'
	    }).done(function(dane)
	    {
	        var wypelniona = (typeof dane.query.results[tytul] === "undefined");
	        if (wypelniona)
			{
				api.post (
				{
					action: 'query',
					format: 'json',
					titles: tytul
				}).done(function(dane)
				{
					if (typeof dane.query.pages["-1"] === "undefined")
					{
						$("#firstHeading").append(kodWypelnionej);
					}
					else
					{
						$("#firstHeading").append(kodNiewypelnionej);
					}
				}).fail(function(error)
			    {
			        console.log(error);
			    });
			}
			else
			{
				$("#firstHeading").append(kodNiewypelnionej);
			}
	    }).fail(function(error)
	    {
	        console.log(error);
	    });
	}
});