Wikipedysta:Abdel/quicksdu.js
Wygląd
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)
- Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5.
- Opera: Naciśnij klawisze Ctrl+F5.
// QuickSDU script by [[:pl:User:ChP94]]
// based on quickimgdelete.js script written by [[:en:User:Howcheng]]
// Released under the [http://www.gnu.org/licenses/gpl.txt GNU Public License (GPL)]
// <pre><nowiki>
var quicksdu_autosave = false;
var quicksdu_warnuser = true;
var quicksdu_ajax;
var quicksdu_u = "";
// From [[en:User:Lupin/autoedit.js]]
function getParamValue(paramName) {
var cmdRe=RegExp('[&?]'+paramName+'=([^&]*)');
var h=document.location;
var m=cmdRe.exec(h);
if (m) {
try {
return decodeURIComponent(m[1]);
} catch (someError) {}
}
return null;
}
function quicksdu_sduIt() {
var reason = encodeURIComponent(prompt("Dlaczego chcesz zgłosić ten art na SdU?", ''));
if(reason != "") {
var title = encodeURIComponent(mw.config.get('wgPageName'));
quicksdu_initAjax();
quicksdu_getUser(title);
u = encodeURIComponent(quicksdu_u);
if(u&&u!="") {
window.open("http://pl.wikipedia.org/w/index.php?title=" + title + "&action=edit&fakeaction=sdu_art&page=" + title + "&reason=" + reason, "sdu_art");
window.open("http://pl.wikipedia.org/w/index.php?title=Wikipedia:SDU/" + title + "&action=edit&fakeaction=sdu_page&editintro=Szablon:SDU editintro&preload=Szablon:SDU preload&reason=" + reason, "sdu_page");
window.open("http://pl.wikipedia.org/w/index.php?title=Wikipedia:Strony do usunięcia&action=edit&fakeaction=sdu_list&page=" + title, "sdu_list");
if(quicksdu_warnuser) {
window.open("http://pl.wikipedia.org/w/index.php?title=Dyskusja_Wikipedysty:" + u + "&action=edit&fakeaction=sdu_warn&page=" + title, "sdu_warn");
}
}
}
}
function quicksdu_poczIt() {
var reason = encodeURIComponent(prompt("Dlaczego chcesz zgłosić ten art do poczekalni SdU?", ''));
if(reason != "") {
var title = encodeURIComponent(mw.config.get('wgPageName'));
quicksdu_initAjax();
quicksdu_getUser(title);
u = encodeURIComponent(quicksdu_u);
if(u&&u!="") {
window.open("http://pl.wikipedia.org/w/index.php?title=" + title + "&action=edit&fakeaction=pocz_art&page=" + title, "sdu_art");
window.open("http://pl.wikipedia.org/w/index.php?title=Wikipedia:Strony do usunięcia/Poczekalnia&action=edit&fakeaction=pocz_list&page=" + title + "&reason=" + reason, "sdu_list");
if(quicksdu_warnuser) {
window.open("http://pl.wikipedia.org/w/index.php?title=Dyskusja_Wikipedysty:" + u + "&action=edit&fakeaction=pocz_warn&page=" + title, "sdu_warn");
}
}
}
}
//Function from QuickEdit 2 by ASM
function quicksdu_initAjax()
{
try
{
if (window.XMLHttpRequest)
{
quicksdu_ajax = new XMLHttpRequest();
quicksdu_ajax.overrideMimeType('text/xml');
}
else if (window.ActiveXObject)
quicksdu_ajax = new ActiveXObject('Microsoft.XMLHTTP');
else throw 'Nie ma AJAX-ów!';
}
catch (e)
{
return false;
}
if (!quicksdu_ajax)
{
alert('Błąd tworzenia obiektu ajax');
return false;
}
return true;
}
function quicksdu_onload() {
if (document.getElementById('ca-edit') == null) // not editable by non-admin
return;
mw.util.addPortletLink('p-tb', 'javascript:quicksdu_sduIt()', "Strona do usunięcia", 'quicksdu', "Zgłoś artykuł do Stron do Usunięcia");
mw.util.addPortletLink('p-tb', 'javascript:quicksdu_poczIt()', "Poczekalnia SdU", 'quickpocz', "Zgłoś artykuł do Poczekalni Stron do Usunięcia");
var fakeaction = getParamValue('fakeaction');
var page = decodeURIComponent(getParamValue('page'));
if(fakeaction=="sdu_list") {
editformval = document.editform.wpTextbox1.value;
var r=editformval.substring(0, editformval.indexOf("strony ==\n")+10)
+"{{Wikipedia:SDU/"+page+"}}\n\n"
+editformval.substring(editformval.indexOf("strony ==\n")+10);
document.editform.wpTextbox1.value = r;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
else if(fakeaction=="sdu_warn") {
editformval = document.editform.wpTextbox1.value;
editformval = editformval + "\n== [[Wikipedia:SDU/"+page+"|SdU]] ==\n{{SDUinformacja|"+page+"}}\n~~~~";
document.editform.wpTextbox1.value = editformval;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
else if(fakeaction=="sdu_art") {
var reason = decodeURIComponent(getParamValue('reason'));
editformval = document.editform.wpTextbox1.value;
editformval = "{{SdU|"+reason+"}}\n" + editformval;
document.editform.wpTextbox1.value = editformval;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
else if(fakeaction=="sdu_page") {
var reason = decodeURIComponent(getParamValue('reason'));
editformval = document.editform.wpTextbox1.value;
var r=editformval.substring(0, editformval.indexOf("Podaj powód")) + reason + " " + editformval.substring(editformval.indexOf("~~"));
document.editform.wpTextbox1.value = r;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
else if(fakeaction=="pocz_list") {
var reason = decodeURIComponent(getParamValue('reason'));
editformval = document.editform.wpTextbox1.value;
var r=editformval.substring(0, editformval.indexOf("G Ó R Z E -->\n")+14)
+"==="+page+"===\n"
+"* "+reason+" ~~~~\n"
+editformval.substring(editformval.indexOf("G Ó R Z E -->\n")+14);
document.editform.wpTextbox1.value = r;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Poczekalni Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
else if(fakeaction=="pocz_warn") {
editformval = document.editform.wpTextbox1.value;
editformval = editformval + "\n== [[Wikipedia:Strony do usunięcia/Poczekalnia|Poczekalnia SdU]] ==\n{{PoczSDUinfo|"+page+"}}\n~~~~";
document.editform.wpTextbox1.value = editformval;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Poczekalni Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
else if(fakeaction=="pocz_art") {
editformval = document.editform.wpTextbox1.value;
editformval = "{{PoczSdU}}\n" + editformval;
document.editform.wpTextbox1.value = editformval;
document.editform.wpSummary.value = "Zgłaszanie strony "+page+" do Poczekalni Stron do Usunięcia";
if(quicksdu_autosave) { document.editform.wpSave.click(); }
}
}
$(quicksdu_onload);
function quicksdu_getUser(title)
{
quicksdu_ajax.onreadystatechange = quicksdu_getUserResponse;
quicksdu_ajax.open('GET', 'http://pl.wikipedia.org/w/index.php?title='+title+'&action=history&limit=1&dir=prev', true);
quicksdu_ajax.send(null);
}
function quicksdu_getUserResponse()
{
if (quicksdu_ajax.readyState != 4 || quicksdu_ajax.status != 200)
return;
var xml = quicksdu_ajax.responseXML;
var spans = xml.getElementsByTagName("span");
for(i=0;i<spans.length;i++) {
var s = spans[i];
if(s.getAttribute("class") == "history-user") {
quicksdu_u = s.firstChild.innerHTML;
break;
}
}
}
//</nowiki></pre>