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

Z Nonsensopedii, polskiej encyklopedii humoru
M (bugfix, SMW traktuje nieistniejące strony jako posiadające każdy atrybut)
M
Linia 11: Linia 11:
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 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");
mw.loader.using( 'mediawiki.ForeignApi' ).done( function ()
api.post(
{
{
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 + ']]'
action: 'ask',
}).done(function(dane)
format: 'json',
{
query: '[[Nie posiada typu strony Gry::true]] [[' + tytul + ']]'
var wypelniona = (typeof dane.query.results[tytul] === "undefined");
}).done(function(dane)
if (wypelniona)
{
{
var wypelniona = (typeof dane.query.results[tytul] === "undefined");
api.post (
if (wypelniona)
{
{
api.post (
action: 'query',
format: 'json',
titles: tytul
}).done(function(dane)
{
if (typeof dane.query.pages["-1"] === "undefined")
{
{
$("#firstHeading").append(kodWypelnionej);
action: 'query',
format: 'json',
}
titles: tytul
else
}).done(function(dane)
{
{
$("#firstHeading").append(kodNiewypelnionej);
if (typeof dane.query.pages["-1"] === "undefined")
{
}
}).fail(function(error)
$("#firstHeading").append(kodWypelnionej);
}
{
console.log(error);
else
{
});
}
$("#firstHeading").append(kodNiewypelnionej);
}
else
{
}).fail(function(error)
$("#firstHeading").append(kodNiewypelnionej);
{
}
console.log(error);
});
}).fail(function(error)
{
}
console.log(error);
else
});
{
$("#firstHeading").append(kodNiewypelnionej);
}
}).fail(function(error)
{
console.log(error);
});
});
}
}
});
});

Wersja z 16:37, 6 cze 2019

$(document).ready(function()
{
	if (mw.config.get("wgNamespaceNumber") == 108)
	{
		//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>");
		
		//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);
	    });
	}
});