Difference between revisions of "User:CRLF/common.js"
(add) |
(fix) |
||
Line 1: | Line 1: | ||
− | function rvt( undop, undoafterp, c ) { // Implements one-click undo | + | function rvt(undop, undoafterp, c) { // Implements one-click undo |
$.ajax({ | $.ajax({ | ||
url: 'https://www.explainxkcd.com/wiki/api.php', | url: 'https://www.explainxkcd.com/wiki/api.php', | ||
Line 5: | Line 5: | ||
format: 'json', | format: 'json', | ||
action: 'edit', | action: 'edit', | ||
− | title: $("#firstHeading").text().substr(33,$("#firstHeading").text().length-34), | + | title: $("#firstHeading").text().substr(33, $("#firstHeading").text().length - 34), |
undo: undop, | undo: undop, | ||
undoafter: undoafterp, | undoafter: undoafterp, | ||
summary: "Reverted vandalism with [[User:CRLF/common.js]]", | summary: "Reverted vandalism with [[User:CRLF/common.js]]", | ||
− | token: mw.user.tokens.get( 'csrfToken' ) | + | token: mw.user.tokens.get('csrfToken') |
}, | }, | ||
dataType: 'json', | dataType: 'json', | ||
type: 'POST', | type: 'POST', | ||
− | success: function() {if(c){$('.mw-diff-undo > a').text("success");}else{$('#link'+undop).text("success");}} | + | success: function () { if (c) { $('.mw-diff-undo > a').text("success"); } else { $('#link' + undop).text("success"); } } |
− | + | }); | |
− | } | + | } |
var href = $('.mw-diff-undo > a').attr('href').split("="); | var href = $('.mw-diff-undo > a').attr('href').split("="); | ||
var undop = href[4]; | var undop = href[4]; | ||
− | var undoafterp = href[3].substr(0,href[3].length-5); | + | var undoafterp = href[3].substr(0, href[3].length - 5); |
$('.mw-diff-undo > a').removeAttr('href'); | $('.mw-diff-undo > a').removeAttr('href'); | ||
− | $('.mw-diff-undo > a').attr('onclick','rvt('+undop+','+undoafterp+',1)'); | + | $('.mw-diff-undo > a').attr('onclick', 'rvt(' + undop + ',' + undoafterp + ',1)'); |
− | function lastTwoRevs(page){ // Implements undo links on contribs page | + | function lastTwoRevs(page) { // Implements undo links on contribs page |
− | + | $.ajax({ | |
url: 'https://www.explainxkcd.com/wiki/api.php', | url: 'https://www.explainxkcd.com/wiki/api.php', | ||
− | type:'GET', | + | type: 'GET', |
− | dataType:'json', | + | dataType: 'json', |
− | data:{action: 'query', prop:'revisions',titles:page,rvprop:'ids',formatversion:2} | + | data: { action: 'query', prop: 'revisions', titles: page, rvprop: 'ids', formatversion: 2 }, |
− | success: function(data) { | + | success: function (data) { |
− | return {'u': data["query"]["pages"][0]["revisions"][0]["revid"], 'a': data["query"]["pages"][0]["revisions"][0]["parentid"]} | + | return { 'u': data["query"]["pages"][0]["revisions"][0]["revid"], 'a': data["query"]["pages"][0]["revisions"][0]["parentid"] } |
− | }}) | + | } |
+ | }) | ||
} | } | ||
− | for (var i in $('mw-contributions-title')){ | + | for (var i in $('mw-contributions-title')) { |
− | var title = i.attr("title"); | + | var title = i.attr("title"); |
− | var res = lastTwoRevs(title); | + | var res = lastTwoRevs(title); |
− | $('<a id="link'+res[u]+'" onclick="rvt('+res[u]+','+res[a]+',0)">[rvt]</a>').insertAfter(i);} | + | $('<a id="link' + res[u] + '" onclick="rvt(' + res[u] + ',' + res[a] + ',0)">[rvt]</a>').insertAfter(i); |
+ | } |
Revision as of 02:06, 21 May 2022
function rvt(undop, undoafterp, c) { // Implements one-click undo $.ajax({ url: 'https://www.explainxkcd.com/wiki/api.php', data: { format: 'json', action: 'edit', title: $("#firstHeading").text().substr(33, $("#firstHeading").text().length - 34), undo: undop, undoafter: undoafterp, summary: "Reverted vandalism with [[User:CRLF/common.js]]", token: mw.user.tokens.get('csrfToken') }, dataType: 'json', type: 'POST', success: function () { if (c) { $('.mw-diff-undo > a').text("success"); } else { $('#link' + undop).text("success"); } } }); } var href = $('.mw-diff-undo > a').attr('href').split("="); var undop = href[4]; var undoafterp = href[3].substr(0, href[3].length - 5); $('.mw-diff-undo > a').removeAttr('href'); $('.mw-diff-undo > a').attr('onclick', 'rvt(' + undop + ',' + undoafterp + ',1)'); function lastTwoRevs(page) { // Implements undo links on contribs page $.ajax({ url: 'https://www.explainxkcd.com/wiki/api.php', type: 'GET', dataType: 'json', data: { action: 'query', prop: 'revisions', titles: page, rvprop: 'ids', formatversion: 2 }, success: function (data) { return { 'u': data["query"]["pages"][0]["revisions"][0]["revid"], 'a': data["query"]["pages"][0]["revisions"][0]["parentid"] } } }) } for (var i in $('mw-contributions-title')) { var title = i.attr("title"); var res = lastTwoRevs(title); $('<a id="link' + res[u] + '" onclick="rvt(' + res[u] + ',' + res[a] + ',0)">[rvt]</a>').insertAfter(i); }