MediaWiki:Common.js: Difference between revisions

From Lochac Marshal Rules Wiki
Jump to navigation Jump to search
No edit summary
(Blanked the page)
Tag: Blanking
 
(91 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 li = document.createElement("li");
      li.appendChild(pdfLink);
      entries.appendChild(li);
    }
  }
}
function CustomizeModificationsOfSidebar() {
  var isLoggedIn;
  try {
    isLoggedIn = wgUserId;
    isLoggedIn = true;
  } catch (ReferenceError) {
    isLoggedIn = false;
  }
  if (isLoggedIn) {
    showToolBox();
  }
  buildSideMenu();
}
jQuery(CustomizeModificationsOfSidebar);

Latest revision as of 08:05, 11 July 2025