// Load RefLinks
mw.loader.load( 'https://meta.wikimedia.org/w/index.php?title=User:Zhaofeng_Li/Reflinks.js&action=raw&ctype=text/javascript' );
mw.loader.load( '/w/index.php?title=User:AlanM1/scripts/CharHexDump.js&action=raw&ctype=text/javascript' );
mw.loader.load( '/w/index.php?title=User:PrimeHunter/Source_links.js&action=raw&ctype=text/javascript' ); // Linkback: [[User:PrimeHunter/Source links.js]]
// Per [[:mw:User:PerfektesChaos/js/resultListSort]] :
mw.loader.load('https://www.mediawiki.org/w/index.php?title=User:PerfektesChaos/js/resultListSort/r.js&action=raw&bcache=1&maxage=86400&ctype=text/javascript');
window.catALotPrefs = { editpages: true };
mw.loader.load( 'https://commons.wikimedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-Cat-a-lot.js' );
mw.loader.load( 'https://commons.wikimedia.org/w/index.php?action=raw&ctype=text/css&title=MediaWiki:Gadget-Cat-a-lot.css', 'text/css' );
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:AlanM1/scripts/hideHotcatMarkers.js' ); // Linkback: [[User:AlanM1/scripts/hideHotcatMarkers.js]]
// AutoEd stuff
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:AlanM1/autoEdLoader.js' ); // Linkback: [[User:AlanM1/autoEdLoader.js]]
LinkClassifierOnDemand = true;
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:Anomie/linkclassifier.js' ); // Linkback: [[User:Anomie/linkclassifier.js]]
mw.loader.load( '/w/index.php?action=raw&ctype=text/css&title=User:Anomie/linkclassifier.css', 'text/css' ); // Linkback: [[User:Anomie/linkclassifier.css]]
$( function () {
mw.util.addPortletLink('p-cactions', 'javascript:LinkClassifier.onDemand()', 'linkclassifier');
});
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:DannyS712/Easy-link.js' );// [[User:DannyS712/Easy-link.js]]
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:DannyS712/Readonly.js' );// [[User:DannyS712/Readonly.js]]
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:DannyS712/Redirectify.js' );// [[User:DannyS712/Redirectify.js]]
var myLintHints = { };
myLintHints.rooms = "*";
mw.hook("lintHint.config").fire(myLintHints);
mw.loader.load( '/w/index.php?title=User:PerfektesChaos/js/lintHint/r.js&action=raw&maxage=86400&ctype=text/javascript');// [[User:PerfektesChaos/js/lintHint/r.js]]
mw.loader.load( '/w/index.php?title=User:Writ Keeper/Scripts/teahouseUtility.js&action=raw&ctype=text/javascript');// [[User:Writ Keeper/Scripts/teahouseUtility.js]]
function setoptions() {
}
function setreason() {
}
/*
function regex(search,replace,repeat) {
var editbox = $('#wpTextbox1');
if(!repeat || repeat<0) {
var repeat = 1;
}
var text = editbox.val();
for(var i=0; i<repeat; i++) {
text = text.replace(search,replace);
}
editbox.val(text);
};
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:Ohconfucius/script/formatgeneral.js' ); // [[User:Ohconfucius/script/formatgeneral.js]]
*/
/* 20191028
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:Ohconfucius/test/formatgeneral.js' ); // [[User:Ohconfucius/script/formatgeneral.js]]
This is the source of these errors:
Content Security Policy: The page’s settings observed the loading of a resource at https://tools-static.wmflabs.org/meta/scripts/pathoschild.templatescript.js (“script-src”). A CSP report is being sent.
Content Security Policy: The page’s settings observed the loading of a resource at https://tools-static.wmflabs.org/meta/scripts/pathoschild.util.js (“script-src”). A CSP report is being sent.
20191028 */
// Per [[WP:LOCO]]
LocalComments = {
dateDifference: true,
dateFormat: 'ymd',
timeFirst: false,
twentyFourHours: true,
dayOfWeek: true,
dropDays: 0,
dropMonths: 0,
dropOffset: 1,
diffLast: true
};
// Per [[Wikipedia:RefToolbar/2.0]]
$('head').one('reftoolbarbase', function() {
var nIndex = -1;
CiteTB.UserOptions['date format'] = "<monthname> <date>, <year>";
CiteTB.UserOptions['autodate fields'] = ['access-date'];
CiteTB.UserOptions['modal'] = false;
// Add oclc to cite book
if (CiteTB.Templates["cite book"]) {
console.log("*** cite book found");
CiteTB.Templates["cite book"]["basic"].push({"field":"oclc", "autofillid":"oclc", "autofillprop":"oclc"});
}
else {
console.log("*** cite book NOT found");
}
// Move cite web date field from extra to basic
if (CiteTB.Templates["cite web"]) {
nIndex = CiteTB.Templates["cite web"]["extra"].findIndex(function(t) { return (t.field === "date"); });
if (nIndex >= 0) {
if (CiteTB.Templates["cite web"]["basic"].push(CiteTB.Templates["cite web"]["extra"][nIndex])) {
CiteTB.Templates["cite web"]["extra"].splice(nIndex, 1);
}
// else ?
}
// else ?
}
// Add volume to cite news
if (CiteTB.Templates["cite news"]) {
nIndex = CiteTB.Templates["cite news"]["basic"].findIndex(function(t) { return (t.field === "issue"); });
if (nIndex >= 0) {
CiteTB.Templates["cite news"]["basic"].splice(nIndex, 0, {"field": "volume", "autofillprop":"volume"});
}
}
});
/*
Don't submit when hitting enter in the summary field
From [[User:Anomie/nosubmitsummary.js]]
*/
$(document).ready(function(){
$('input#wpSummary').keypress(function(e){
if(e.which==13) e.preventDefault();
});
// Example of how to change one of the pt- portlet links
// Maybe add &title=Special%3AContributions
//$('#pt-mycontris a')[0].href += '?namespace=2&wpfilters%5B%5D=nsInvert';
// Per [[WP:LOCO]]
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:AlanM1/comments in local time.js' ); // [[User:AlanM1/comments in local time.js]] based on [[User:Gary/comments in local time.js]]
});
mw.loader.load( '/w/index.php?action=raw&ctype=text/javascript&title=User:Anomie/unsignedhelper.js'); // Linkback: [[User:Anomie/unsignedhelper.js]]
// NavPops config per [[WP:POP#Options]]
window.popupOnlyArticleLinks = false;
window.popupInitialWidth = 350;
window.popupMaxWidth = 700;
window.popupTocLinks = true;
window.popupHistoryPreviewLimit = 100;
window.popupContribsPreviewLimit = 100;
window.popupPreviewKillTemplates = false;
window.popupPreviewFirstParOnly = false;
window.popupMaxPreviewSentences = 1000;
window.popupMaxPreviewCharacters = 2000;
window.popupSimplifyMainLink = false;
window.popupImageSize = 120;
window.popupDiffMaxLines = 500;
window.popupDiffContextLines = 3;
window.popupDiffContextCharacters = 100;
window.popupThumbAction = "sizetoggle";
function am1SecNavInsert() {
aElems = Array.from(document.getElementsByClassName("mw-editsection"));
aTitles = Array.from(document.getElementsByClassName("mw-headline"));
var lastElemNum = aElems.length - 1;
if (lastElemNum >= 0) {
var lastId = '#' + aTitles[lastElemNum].id;
for (i = 0; i <= lastElemNum; i++) {
if (aElems[i].firstChild.className === "mw-editsection-bracket") {
var span = document.createElement('span');
span.id = "am1-secnav" + i;
span.appendChild(document.createTextNode(i + ': '));
if (i > 0) {
var link = document.createElement('a');
link.href = '#top';
link.appendChild(document.createTextNode('↑↑top'));
span.appendChild(document.createTextNode('['));
span.appendChild(link);
span.appendChild(document.createTextNode('] '));
var linku = document.createElement('a');
linku.href = '#' + aTitles[i - 1].id;
linku.appendChild(document.createTextNode('↑up'));
span.appendChild(document.createTextNode('['));
span.appendChild(linku);
span.appendChild(document.createTextNode('] '));
}
if (i < lastElemNum) {
var linkd = document.createElement('a');
linkd.href = '#' + aTitles[(i) ? (i + 1) : 0].id;
linkd.appendChild(document.createTextNode('↓down'));
span.appendChild(document.createTextNode('['));
span.appendChild(linkd);
span.appendChild(document.createTextNode('] '));
var linke = document.createElement('a');
linke.href = lastId;
linke.appendChild(document.createTextNode('↓↓end'));
span.appendChild(document.createTextNode('['));
span.appendChild(linke);
span.appendChild(document.createTextNode('] '));
}
aElems[i].insertBefore(span, aElems[i].firstChild);
}
}
}
}
$( function() { am1SecNavInsert(); });
function getTimeOffset() {
var tz = mw.user.options.get('timecorrection');
console.log('\ntimecorrection: ' + tz + '\n');
if(tz) {
if( tz.indexOf('|') > -1 ) {
// New format
return parseInt(tz.split('|')[1],10);
} else if ( tz.indexOf(':') > -1 ) {
// Old format
return( parseInt(tz,10)*60 + parseInt(tz.split(':')[1],10) );
}
}
return 0;
}
function reAssignLKey() {
// Steal Alt-Shift-L hotkey from Watchlist for Easy Link
// console.log("Watchlist accesskey before: '" + $("#pt-watchlist")[0].firstChild.accessKey + "'");
var wl = $("#pt-watchlist")[0];
if(wl)wl.firstChild.accessKey = "";
// console.log("Watchlist accesskey after: '" + $("#pt-watchlist")[0].firstChild.accessKey + "'");
// console.log("EasyLink accesskey before: '" + $("#ca-copy-link")[0].firstChild.accessKey + "'");
$("#ca-copy-link")[0].firstChild.accessKey = "l";
// console.log("EasyLink accesskey after: '" + $("#ca-copy-link")[0].firstChild.accessKey + "'");
}
$.when( mw.loader.using( ['mediawiki.util'] ), $.ready ).done( function() {
mw.util.addPortletLink(
'p-personal',
'javascript:void(0)',
'Skip to bottom',
'pt-skiptobottom',
'Instantly skip to the bottom of the page',
null,
'#pt-preferences'
);
mw.util.addPortletLink(
'p-personal',
'javascript:void(0)',
'HideAll',
'pt-hideall',
'Hide all shown collapsibles',
null,
'#pt-skiptobottom'
);
mw.util.addPortletLink(
'p-personal',
'javascript:void(0)',
'ShowAll',
'pt-showall',
'Show all hidden collapsibles',
'a',
'#pt-hideall'
);
$('#pt-skiptobottom').on('click', function() {
var scrollingElement = (document.scrollingElement || document.body);
scrollingElement.scrollTop = scrollingElement.scrollHeight;
});
function clickAll(sClass, sValue) {
// console.log("In clickAll('" + sClass + "', '" + sValue + "')");
var nCount = 0;
Array.from(document.getElementsByClassName(sClass)).forEach(function(xItem) {
// console.log(sClass + ": id='" + xItem.offsetParent.lastChild.id + "', innerHTML='" + xItem.innerHTML + "'");
if (xItem.innerHTML === sValue) {
xItem.click();
++nCount;
}
});
return nCount;
}
$('#pt-showall').on('click', function(e) {
e.preventDefault();
clickAll("NavToggle", "[show]");
clickAll("mw-collapsible-text", "show");
var nLoops = 0;
while (clickAll("CategoryTreeToggle", "►") > 0 && ++nLoops <= 10);
$('#pt-showall')[0].firstChild.accessKey = "";
$('#pt-hideall')[0].firstChild.accessKey = "a";
});
$('#pt-hideall').on('click', function(e) {
e.preventDefault();
clickAll("NavToggle", "[hide]");
clickAll("mw-collapsible-text", "hide");
var nLoops = 0;
while (clickAll("CategoryTreeToggle", "▼") > 0 && ++nLoops <= 10);
$('#pt-hideall')[0].firstChild.accessKey = "";
$('#pt-showall')[0].firstChild.accessKey = "a";
});
// am1SecNavInsert();
// This is ugly, but put it inline or in other ready()s and the ca-copy-link isn't there yet.
// Probably need to just fork the script that adds it to provide the key (though when will the
// pt-watchlist be ready? Can I wait on it efficiently?)
window.setTimeout(reAssignLKey, 2000);
});