MediaWiki:Gadget-TemplateScript.js

MediaWiki interface page

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/**
 * TemplateScript adds configurable templates and scripts to the sidebar, and adds an example regex editor.
 * @see https://meta.wikimedia.org/wiki/TemplateScript
 * @update-token [[File:Pathoschild/templatescript.js]]
 */
// <nowiki>
// on page load we want to run this:
// ------------------------------------------------------------
var containers = document.getElementsByClassName("ts-inner");
// check if we have anything set in session
var sessionToggleWidth = sessionStorage.getItem("setToggleWidth");
// if we do have session width then we want to apply it to all containers
if(sessionToggleWidth) {
  Object.keys(containers).forEach(function (key) {
       containers[key].style.maxWidth = sessionToggleWidth; 
});
}
mw.config.set('userjs-templatescriptthe', { regexEditor: false });
$.ajax('//themidnight.wiki/images/8/8d/Templatescript.js', { dataType:'script', cache:true }).then(function() {
pathoschild.TemplateScript.add({
	name:'Toggle width',
	forActions: '*',
	script: function myFunction() {
	var toggleWidth = containers[0].style.maxWidth === "none" ? "115em" : "none";
  sessionStorage.setItem("setToggleWidth", toggleWidth);
  Object.keys(containers).forEach(function (key) {
       containers[key].style.maxWidth = toggleWidth; 
});
}
});
});
// </nowiki>