User:TheTVExpert/submitRMTR.js

//submitRMTR

//

$(function() {

function submitRMTR() {

var oldTitle = $('input[name=wpOldTitle]').val();

var newNamespace = mw.config.get('wgFormattedNamespaces')[$('select[name=wpNewTitleNs]').val()];

var newTitle = $('input[name=wpNewTitleMain]').val();

var newTitleFull = (newNamespace === '' ? newTitle : newNamespace + ':' + newTitle);

var reason = $('input[name=wpReason]').val();

var rmtrText = '{{subst:RMassist|1=' + oldTitle + '|2=' + newTitleFull + '|reason=' + reason + '}}';

var textToFind = /---- and enter on a new line.* -->/;

var result;

var api = new mw.Api();

var params = {

action: 'query',

prop: 'revisions',

rvprop: 'content',

rvlimit: 1,

titles: 'Wikipedia:Requested moves/Technical requests'

};

api.get(params).done(function(data) {

var page;

for (page in data.query.pages){

result = data.query.pages[page].revisions[0]['*'];

var newResult = result.replace(textToFind, '$&\n' + rmtrText);

var params2 = {

action: 'edit',

title: 'Wikipedia:Requested moves/Technical requests',

text: newResult,

summary: "Add request using submitRMTR"

},

api2 = new mw.Api();

api2.postWithToken('csrf',params2).done(function(data){

console.log(data);

alert("Success.");

window.location = mw.util.getUrl('Wikipedia:Requested moves/Technical requests');

});

}

});

}

if (window.location.href.match('Special:MovePage')) {

var $rmtrButton = new OO.ui.ButtonWidget({

label:'Submit Technical Request',

flags: ['primary','progressive']

}).$element

.on('click',submitRMTR)

.appendTo($('button[name=wpMove]').parent().parent())

;

}

});

//