// <nowiki>
importScript("User:JJPMaster/CurateThisPage/review.js");
var parsedTitle = mw.config.get("wgPageName").replace(/_/g, " ");
async function getAuthor() {
var par = {
action: 'query',
prop: 'revisions',
titles: parsedTitle,
rvprop: 'user',
rvdir: 'newer',
rvlimit: 1,
format: 'json'
},
api = new mw.Api();
const data = await api.get( par );
return Object.values(data.query.pages)[0].revisions[0].user;
}
$(() => {
if (mw.config.get("wgArticleId") !== 0) {
var RFDporty = mw.util.addPortletLink('luna-actions', '#', 'RfD', 'luna-rfd', 'File a deletion request for this page');
$("#bodyContent").append(`
<div id="RFDdialog">
Please enter the reason for deletion:
<textarea name="RFDreason" id="RFDreason" placeholder="Reason for deletion"></textarea>
<input type="checkbox" id="notifyAuthor2" name="notifyAuthor2" checked /><label for="notifyAuthor2">Notify page author</label><br />
<button type="button" id="reqDel">Request deletion</button></div>
`);
$("#RFDdialog").hide();
$(RFDporty).click(() => $("#RFDdialog").dialog({ title: "Request deletion", width: "auto", height: "auto" }));
$("#reqDel").click(function() {
var myText = document.getElementById("RFDreason");
var reason = myText.value;
if (!reason) alert("You must provide a reason.");
else {
if (window.isReviewer) {
doTheReview();
}
var params = {
action: 'edit',
prependtext: `<noinclude>{{Rfd}}</noinclude>\n`,
title: parsedTitle,
summary: "Making [[WB:Requests for deletion|deletion request]]",
tags: "Luna",
format: 'json'
},
api = new mw.Api();
api.postWithToken( 'csrf', params ).done( function ( data ) {
console.log( data );
} );
(async function() {
if ($("#notifyAuthor2").prop("checked")) {
params = {
action: 'edit',
appendtext: `\n{{subst:Rfd warning|${parsedTitle}|~~~~}}`,
title: `User_talk:${await getAuthor()}`,
summary: "Notifying author about page tagging",
tags: "Luna",
format: 'json'
},
api = new mw.Api();
api.postWithToken( 'csrf', params ).done( function ( data ) {
console.log( data );
} );
}
})();
params = {
action: 'edit',
appendtext: `\n== [[${parsedTitle}]] ==\n${reason} ~~~~`,
title: `Wikibooks:Requests for deletion`,
summary: `Adding deletion request for [[${parsedTitle}]]`,
tags: "Luna",
format: 'json'
},
api = new mw.Api();
api.postWithToken( 'csrf', params ).done( function ( data ) {
console.log( data );
} );
mw.notify("Luna:\nThe page has been nominated for deletion. Reloading...");
setTimeout(() => window.location.reload(), 2000);
}
});
}
});
// </nowiki>