Creation.js – MediaWiki

From Bohemia Interactive Community
Categories:
(Add Introduction Category preload)
m (a missed Ctrl-Z later…)
Line 23: Line 23:
}
}
switch (mw.config.get("wgCanonicalNamespace").toLower())
switch (mw.config.get("wgCanonicalNamespace"))
{
{
case "Template":
case "Template":

Revision as of 04:38, 2 January 2021

/*****************************************************************************************
 * JavaScript here will be loaded by MediaWiki:Common.js when "creation" is detected.
 *
 *****************************************************************************************/

(function() { // BEGIN WRAPPER

	/*****************************************************************************************
	 * Function adding a UI feature that if used, preloads templates
	 * helpful during certain page creations.
	 * Maintainer: Lou Montana from Fred Gandt
	 */

		function offerCreationPreload(type) {
			var createBar = document.getElementById("ca-edit"),
				button = createBar.getElementsByTagName("span")[0].cloneNode(true),
				link = button.getElementsByTagName("a")[0];
			link.removeAttribute("accesskey");
			link.setAttribute("title", "Preload a " + type + " guide for this creation");
			link.setAttribute("href", link.getAttribute("href") + "&preload=Template:Preload/" + type);
			link.innerHTML = "Preload " + type + " template";
			createBar.appendChild(button);
		}
		
		switch (mw.config.get("wgCanonicalNamespace"))
		{
			case "Template":
				offerCreationPreload("Template");
				return;

			case "Category":
				if (mw.config.get("wgTitle").startsWith("Introduced with ")) {
					offerCreationPreload("IntroductionCategory");
				}
				return;

			default:
				if (mw.config.get("wgTitle").indexOf("BIS fnc ") === 0 ||
					mw.config.get("wgTitle").indexOf("BIN fnc ") === 0) {
					offerCreationPreload("Function");
				} else {
					offerCreationPreload("Command");
				}
				return;
		}

	/*****************************************************************************************/

	}()); // END WRAPPER