User:逆襲的天邪鬼/AutoUndo.js: Difference between revisions

Content added Content deleted
m (via Wikiplus)
(via Wikiplus)
Line 35: Line 35:


var undo = function (edits) {
var undo = function (edits) {
var callback = function (edit) {
return function (data) {
if (data.edit && data.edit.result === 'Success') {
print('<span style="color:green">' + '已撤銷頁面 ' + pageLink(edit.title) + ' 的修訂版本 ' + pageLink('Special:Diff/' + edit.revid, edit.revid) + '</span>');
} else {
print('<span style="color:red">' + '無法撤銷頁面 ' + pageLink(edit.title) + ' 的修訂版本 ' + pageLink('Special:Diff/' + edit.revid, edit.revid) + '</span>');
}
};
};

for (var i=0; i<edits.length; i++) {
for (var i=0; i<edits.length; i++) {
var cb = callback(edits[i]);
$.ajax({
$.ajax({
url: mw.util.wikiScript('api'),
url: mw.util.wikiScript('api'),
Line 43: Line 54:
title: edits[i].title,
title: edits[i].title,
undo: edits[i].revid, // 換成 undoafter 更狠
undo: edits[i].revid, // 換成 undoafter 更狠
minor: true,
bot: true,
summary: SUMMARY,
token: mw.user.tokens.get('editToken')
token: mw.user.tokens.get('editToken')
},
},
dataType: 'json',
dataType: 'json',
type: 'POST',
type: 'POST',
}).then(function (data) {
}).then(cb);
if (data.edit && data.edit.result === 'Success') {
print('<span style="color:green">' + '已撤銷頁面 ' + pageLink(edits[i].title) + ' 的修訂版本 ' + pageLink('Special:Diff/' + edits[i].revid, edits[i].revid) + '</span>');
} else {
print('<span style="color:red">' + '無法撤銷頁面 ' + pageLink(edits[i].title) + ' 的修訂版本 ' + pageLink('Special:Diff/' + edits[i].revid, edits[i].revid) + '</span>');
}
});
}
}
};
};