|
|
| (90 intermediate revisions by 2 users not shown) |
| Line 1: |
Line 1: |
| /* Any JavaScript here will be loaded for all users on every page load. */
| |
|
| |
|
| var ruleBooks = [
| |
| {
| |
| namespace: "Archery",
| |
| label: "Target Archery / Thrown Weapon Rules",
| |
| webVerson: "https://sca.org.nz/wiki/index.php?title=Archery:Handbook",
| |
| pdfVersion:
| |
| "https://sca.org.nz/wiki/index.php?title=Category:Target_Archery_Rulebook&action=pdfbook&titlePage=Archery:Titlepage",
| |
| chapters: [
| |
| [
| |
| "Basic Rules",
| |
| "https://sca.org.nz/wiki/index.php?title=Archery:Basic_Rules"
| |
| ],
| |
| [
| |
| "Equipment standards",
| |
| "https://sca.org.nz/wiki/index.php?title=Archery:Equipment_standards"
| |
| ],
| |
| [
| |
| "Range safety",
| |
| "https://sca.org.nz/wiki/index.php?title=Archery:Range_safety"
| |
| ],
| |
| ["Officers", "https://sca.org.nz/wiki/index.php?title=Archery:Officers"],
| |
| [
| |
| "Authorising as a Target Archery Marshal",
| |
| "https://sca.org.nz/wiki/index.php?title=Archery:Authorising"
| |
| ]
| |
| ]
| |
| }
| |
| ];
| |
|
| |
| function showToolBox() {
| |
| var toolBox = document.getElementById("p-tb");
| |
| toolBox.style.visibility = "visible";
| |
| }
| |
|
| |
| function buildSideMenu() {
| |
| currentNamespace = wgCanonicalNamespace;
| |
| var navigationMenu = document.getElementById("mw-panel");
| |
|
| |
| for (var ruleBook in ruleBooks) {
| |
| var bookObj = ruleBooks[ruleBook];
| |
|
| |
| var bookDiv = document.createElement("div");
| |
| bookDiv.setAttribute("class", "portal");
| |
| navigationMenu.insertBefore(bookDiv, document.getElementById("p-tb"));
| |
|
| |
| var title = document.createElement("h3");
| |
| //title.setAttribute("class", "portal");
| |
| //title.setAttribute("role", "navigation");
| |
| if ("webVersion" in bookObj) {
| |
| var titleLink = document.createElement("a");
| |
| titleLink.setAttribute("href", bookObj.webVersion);
| |
| titleLink.appendChild(document.createTextNode(bookObj.label));
| |
| title.appendChild(titleLink);
| |
| } else {
| |
| title.appendChild(document.createTextNode(bookObj.label));
| |
| }
| |
| bookDiv.appendChild(title);
| |
|
| |
| var navBody = document.createElement("div");
| |
| navBody.setAttribute("class", "body");
| |
| bookDiv.appendChild(navBody);
| |
|
| |
| var entries = document.createElement("ul");
| |
| navBody.appendChild(entries);
| |
|
| |
| if (bookObj.namespace === wgCanonicalNamespace && "chapters" in bookObj) {
| |
| for (chapter in bookObj.chapters) {
| |
| var chapterLink = document.createElement("a");
| |
| chapterLink.appendChild(document.createTextNode(chapter[0]));
| |
| chapterLink.setAttribute("href", chapter[1]);
| |
| var li = document.createElement("li");
| |
| li.appendChild(chapterLink);
| |
| entries.appendChild(li);
| |
| }
| |
| }
| |
|
| |
| if ("pdfVersion" in bookObj) {
| |
| var pdfLink = document.createElement("a");
| |
| pdfLink.appendChild(document.createTextNode("PDF version"));
| |
| pdfLink.setAttribute("href", bookObj.pdfVersion);
| |
| var h3 = document.createElement("h3");
| |
| h3.appendChild(pdfLink);
| |
| bookDivries.appendChild(h3);
| |
| }
| |
| }
| |
| }
| |
|
| |
| function CustomizeModificationsOfSidebar() {
| |
| var isLoggedIn;
| |
|
| |
| try {
| |
| isLoggedIn = wgUserId;
| |
| isLoggedIn = true;
| |
| } catch (ReferenceError) {
| |
| isLoggedIn = false;
| |
| }
| |
|
| |
| if (isLoggedIn) {
| |
| showToolBox();
| |
| }
| |
| buildSideMenu();
| |
| }
| |
|
| |
| jQuery(CustomizeModificationsOfSidebar);
| |