User:JJPMaster/Scripts/masscat.js: Difference between revisions

Content deleted Content added
No edit summary
for global use
 
(16 intermediate revisions by the same user not shown)
Line 1:
var contentContent = document.getElementById("bodyContent");
if (mw.config.get("wgCanonicalNamespace") == "Category" || mw.config.get("wgCanonicalNamespace") == "Category talk") {
 
mw.util.addPortletLink("p-tb", `/wiki/Special:MassCat?cat=${mw.config.get("wgTitle")}`, "Mass categorizer", "p-masscat", "Mass categorizer");
}
// Adapted from User:Ahecht/Scripts/massmove.js
function massCatGetArticles() {
Line 14 ⟶ 16:
}
return ret;
}
 
function massCatGetCat() {
return document.getElementById("wpMassCatName").value;
}
 
function massCatPrepare(e) {
alert("Your articles are these, right?\n" + massCatGetArticles());
e.preventDefault();
alertvar MCarts = confirm("Your articles are these, right?\n" + massCatGetArticles());
var MCcat;
var MCfinal;
if (MCarts) MCcat = confirm(`And you're adding them to ${massCatGetCat()}, right?`);
if (MCcat) MCfinal = confirm("Are you sure you want to do this mass categorization?");
if (MCfinal) doMassCat();
}
 
function doMassCat() {
var params;
massCatGetArticles().forEach((e) => {
params = {
action: "edit",
title: e,
appendtext: `\n[[Category:${massCatGetCat()}]]`,
summary: "Mass categorization with [[w:en:User:JJPMaster/masscat.js|MassCat]]"
},
api = new mw.Api();
 
api.postWithToken( 'csrf', params ).done( function ( data ) {
console.log( data );
___location.reload();
} );
 
});
}
 
$(function() {
if(mw.config.get("wgPageName").toLowerCase() == "special:masscat") {
document.title = "Mass categorizer - " + mw.config.get("wgSiteName");
document.getElementById("firstHeading").innerText = "Mass categorizer";
// Adapted from [[User:Ahecht/Scripts/massmove.js]]
contentContent.innerHTML = `<form id="wpMassCat" name="wpMassCat">
<b>If you abuse this tool, it\'s <i>your</i> fault, not mine.</b>
<div id="wpMassCatFailedContainer"></div>
The name of the category:<br/>
<input type="text" id="wpMassCatName" name="wpMassCatName" value="${new URLSearchParams(window.___location.search).get("cat")}"/>
<br /><br />
Pages to moveadd to the category (one on each line, please):<br />
<textarea tabindex="1" accesskey="," name="wpMassCatPages" id="wpMassCatPages" rows="10" cols="80"></textarea>
<input type="submit"/>