MediaWiki:Common.js

From Olentangy Park Wiki
Jump to navigation Jump to search

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)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
// Any JavaScript here will be loaded for all users on every page load.

var attractions = {
	collapsed: true,
	cHead: "attractions-collapsed-head",
	eHead: "attractions-expanded-head"
};

var colonnade = {
	collapsed: true,
	cHead: "colonnade-collapsed-head",
	eHead: "colonnade-expanded-head"
};

var rides = {
	collapsed: true,
	cHead: "rides-collapsed-head",
	eHead: "rides-expanded-head"
};

var ridesAndAttractions = {
	collapsed: true,
	cHead: "rides-and-attractions-collapsed-head",
	eHead: "rides-and-attractions-expanded-head"
};

var midway = {
	collapsed: true,
	cHead: "midway-collapsed-head",
	eHead: "midway-expanded-head"
};

var parkSections = {
	collapsed: true,
	cHead: "park-sections-collapsed-head",
	eHead: "park-sections-expanded-head"
};

function expandAttractions() { expand("attractions"); }
function expandColonnade() { expand("colonnade"); }
function expandRides() { expand("rides"); }
function expandRidesAndAttractions() { expand("rides-and-attractions"); }
function expandMidway() { expand("midway"); }
function expandParkSections() { expand("park-sections"); }

function expand(id) {
	var obj = {};
	
	switch (id) {
		case "attractions":
			obj = attractions;
			break;
		case "colonnade":
			obj = colonnade;
			break;
		case "rides":
			obj = rides;
			break;
		case "rides-and-attractions":
			obj = ridesAndAttractions;
			break;
		case "midway":
			obj = midway;
			break;
		case "park-sections":
			obj = parkSections;
			break;
		default:
			console.log("expand() doesn't know the ID provided.");
			break;
	}
	
    if (obj.collapsed) {
          document.getElementById(obj.cHead).style.display = "none";
          document.getElementById(obj.eHead).style.display = "block";
          obj.collapsed = false;
     }
     else {
          document.getElementById(obj.cHead).style.display = "block";
          document.getElementById(obj.eHead).style.display = "none";
          obj.collapsed = true;
     }
}

try {
	document.getElementById("attractions-collapsed-head").addEventListener("click", expandAttractions);
	document.getElementById("attractions-expanded-head").addEventListener("click", expandAttractions);
}
catch (error) { }

try {
	document.getElementById("colonnade-collapsed-head").addEventListener("click", expandColonnade);
	document.getElementById("colonnade-expanded-head").addEventListener("click", expandColonnade);
}
catch (error) { }

try {
	document.getElementById("rides-collapsed-head").addEventListener("click", expandRides);
	document.getElementById("rides-expanded-head").addEventListener("click", expandRides);	
}
catch (error) { }

try {
	document.getElementById("rides-and-attractions-collapsed-head").addEventListener("click", expandRidesAndAttractions);
	document.getElementById("rides-and-attractions-expanded-head").addEventListener("click", expandRidesAndAttractions);
}
catch (error) { }

try {
	document.getElementById("midway-collapsed-head").addEventListener("click", expandMidway);
	document.getElementById("midway-expanded-head").addEventListener("click", expandMidway);
}
catch (error) { }

try {
	document.getElementById("park-sections-collapsed-head").addEventListener("click", expandParkSections);
	document.getElementById("park-sections-expanded-head").addEventListener("click", expandParkSections);
}
catch (error) { }