Wikireporter:Saper/scripts/edithysteria.js
Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.
- Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
- Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
- Internet Explorer / Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5
- Opera: Naciśnij klawisze Ctrl+F5.
// EditHysteria script by [[:pl:User:ChP94]]
// Standard fix by [[:pl:User:Saper]]
// Released under the [http://www.gnu.org/licenses/gpl.txt GNU Public License (GPL)]
// <pre><nowiki>
var eh_ajax; var cont;
function eh_init() {
var conts = document.getElementsByTagName("h1");
for(i=0;i<conts.length;i++) {
var c = conts[i];
if(c.getAttribute("class")=="firstHeading" ||
c.getAttribute("class")=="pagetitle") {
cont = c; break;
}
}
if(!cont) {
cont = document.getElementById("section-0");
}
eh_initAjax();
eh_getHistory();
}
//Function from QuickEdit 2 by ASM
function eh_initAjax()
{
try
{
if (window.XMLHttpRequest)
{
eh_ajax = new XMLHttpRequest();
eh_ajax.overrideMimeType('text/xml');
}
else if (window.ActiveXObject)
eh_ajax = new ActiveXObject('Microsoft.XMLHTTP');
else throw 'Nie ma AJAX-ów!';
}
catch (e)
{
return false;
}
if (!eh_ajax)
{
qeShowError('Błąd tworzenia obiektu ajax');
return false;
}
return true;
}
function eh_getHistory()
{
var title = encodeURIComponent(mw.config.get('wgPageName'));
eh_ajax.onreadystatechange = eh_getHistotyResponse;
eh_ajax.open('GET', 'http://pl.wikinews.org/w/index.php?title='+title+'&action=history', true);
eh_ajax.send(null);
}
function eh_getHistotyResponse()
{
if (eh_ajax.readyState != 4 || eh_ajax.status != 200)
return;
var xml = eh_ajax.responseXML;
var title = encodeURIComponent(mw.config.get('wgPageName'));
var spans = xml.getElementsByTagName("span");
var user = ""; var diff = 0; var l_user = ""; var l_diff = -1; var count = 1;
for(i=0;i<spans.length;i++) {
var s = spans[i];
if(s.getAttribute("class") == "history-user") {
var u = s.firstChild.innerHTML;
if(l_diff == -1) {
try {
l_diff = s.previousSibling.previousSibling.previousSibling.previousSibling.getAttribute("value");
}
catch (e) {
}
}
if(l_user == "") l_user = u;
else if(u != l_user) {
user = u;
diff=s.previousSibling.previousSibling.previousSibling.previousSibling.getAttribute("value");
break;
}
else {
count++;
}
}
}
if(l_diff!=-1){
prevuSpan = document.createElement("span");
prevuSpan.style.fontSize = "8pt";
prevuSpan.style.marginLeft = "10px";
prevuSpan.style.lineHeight = "1em";
prevuSpan.innerHTML = "<br />Ostatnio <a href=\"/w/index.php?title=" + wgPageName + "&diff=" + l_diff + "&oldid=" + diff + "\"/>edytowany</a>" +
" przez <a href=\"/wiki/Wikireporter:" + l_user + "\">" + l_user + "</a>" +
" (<a href=\"/wiki/Specjalna:Wkład/"+l_user+"\">wkład</a>, <a href=\"/wiki/Dyskusja_wikireportera:"+l_user+"\">dyskusja</a>, <a href=\"/wiki/Specjalna:Blokuj/"+l_user+"\">zablokuj</a>) (" + count + "x).";
if(user != "") {
prevuSpan.innerHTML += " Wcześniejszym edytorem był user " + "<a href=\"/wiki/Wikireporter:" + user + "\">" + user + "</a>" +
" (<a href=\"/wiki/Specjalna:Wkład/"+user+"\">wkład</a>, <a href=\"/wiki/Dyskusja_wikireportera:"+user+"\">dyskusja</a>, <a href=\"/wiki/Specjalna:Blokuj/"+user+"\">zablokuj</a>)";
}
cont.appendChild(prevuSpan);
}
else if(l_user!=""){
prevuSpan = document.createElement("span");
prevuSpan.style.fontSize = "8pt";
prevuSpan.style.marginLeft = "10px";
prevuSpan.style.lineHeight = "1em";
prevuSpan.innerHTML = "<br />To jest jedyna wersja tego artykułu. " +
"Jej twórcą jest <a href=\"/wiki/Wikireporter:" + l_user + "\">" + l_user + "</a>" +
" (<a href=\"/wiki/Specjalna:Wkład/"+l_user+"\">wkład</a>, <a href=\"/wiki/Dyskusja_wikireportera:"+l_user+"\">dyskusja</a>, <a href=\"/wiki/Specjalna:Blokuj/"+l_user+"\">zablokuj</a>).";
cont.appendChild(prevuSpan);
}
}
$(eh_init);