User:Mike Dillon/Scripts/aiv.js
From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Firefox/Mozilla/Safari: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Internet Explorer: press Ctrl-F5, Opera/Konqueror: press F5.
// <pre><nowiki> // Script from User:Amarkov/linkedpagecontentadder.js //Or it will be when that is done, at least // This is a javascript tool which reports things to AIV, which should work for any browser // Make sure popups aren't blocked if this is set to true var aivReportNewWindow; if (aivReportNewWindow == null) { aivReportNewWindow = true; } var aivReportButton; if (aivReportButton == null) { aivReportButton = "wpPreview"; // Options: wpSave, wpPreview, wpDiff, false } function aivreport() { var username; try { if (wgPageName == "Special:Contributions") { // Find the form containing the element with the id "namespace" var form = document.getElementById("namespace").form; // Extract the username from the "target" field of the form username = form.target.value.replace("_", " "); } else { username = wgTitle.split('/')[0]; } } catch (e) { // Fall through } if (!username) { alert("Unknown username"); return; } var reason = prompt("Reason?"); if (!reason) { // Cancel clicked or no reason given; abort return; } var aivUrl = wgServer + wgScriptPath + "/index.php?action=edit" + "&title=Wikipedia:Administrator intervention against vandalism" + "&username=" + encodeURIComponent(username) + "&reason=" + encodeURIComponent(reason) + "&fakeparam=broom"; if (aivReportNewWindow) { window.open(aivUrl); } else { window.location.href = aivUrl; } } if (wgCanonicalNamespace.match(/^User/) || wgPageName == "Special:Contributions") { addOnloadHook(function () { addTab("javascript:aivreport()", "AIV", "ca-AIV", "AIV", ""); }); } function makereport() { var params = location.search.substring(1).split("&"); var username = decodeURIComponent(params[2].split("=", 2)[1]); var reason = decodeURIComponent(params[3].split("=", 2)[1]); var vandalTag; if (username.match(/^\d+\.\d+\.\d+\.\d+$/)) { vandalTag = 'IPvandal'; } else { vandalTag = 'vandal'; } document.editform.wpTextbox1.value += '* {' + '{' + vandalTag + '|' + username + '}' + '}' + ' ' + reason + ' -- ~' + '~' + '~' + '~'; document.editform.wpSummary.value = 'Reporting vandalism by ' + '[' + '[User:' + username + '|' + username + ']' + ']: ' + reason; document.editform.wpMinoredit.checked = false; // Click button indicated by aivReportButton, unless the value is false if (aivReportButton) { document.editform[aivReportButton].click(); } } if (location.search.indexOf("fakeparam") != -1) { addOnloadHook(makereport); } // </nowiki></pre>