MediaWiki:Common.js: Difference between revisions

From SCA Lochac
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
/* Any JavaScript here will be loaded for all users on every page load. */
/* Any JavaScript here will be loaded for all users on every page load. */


var ruleBooks = [
var ruleBooks = {
  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 ModifySidebar(action, section, name, link) {
  try {
    switch (section) {
      case "languages":
        var target = "p-lang";
        break;
      case "toolbox":
        var target = "p-tb";
        break;
      case "navigation":
        var target = "p-navigation";
        break;
      default:
        var target = "p-" + section;
        break;
    }


function ModifySidebar( action, section, name, link ) {
    if (action == "add") {
try {
      var node = document
switch ( section ) {
        .getElementById(target)
case 'languages':
        .getElementsByTagName("div")[0]
var target = 'p-lang';
        .getElementsByTagName("ul")[0];
break;
case 'toolbox':
var target = 'p-tb';
break;
case 'navigation':
var target = 'p-navigation';
break;
default:
var target = 'p-' + section;
break;
}


if ( action == 'add' ) {
      var aNode = document.createElement("a");
var node = document.getElementById( target )
      var liNode = document.createElement("li");
  .getElementsByTagName( 'div' )[0]
  .getElementsByTagName( 'ul' )[0];


var aNode = document.createElement( 'a' );
      aNode.appendChild(document.createTextNode(name));
var liNode = document.createElement( 'li' );
      aNode.setAttribute("href", link);
      liNode.appendChild(aNode);
      liNode.className = "plainlinks";
      node.appendChild(liNode);
    }


aNode.appendChild( document.createTextNode( name ) );
    if (action == "remove") {
aNode.setAttribute( 'href', link );
      var list = document
liNode.appendChild( aNode );
        .getElementById(target)
liNode.className = 'plainlinks';
        .getElementsByTagName("div")[0]
node.appendChild( liNode );
        .getElementsByTagName("ul")[0];
}


if ( action == 'remove' ) {
      var listelements = list.getElementsByTagName("li");
var list = document.getElementById( target )
  .getElementsByTagName( 'div' )[0]
  .getElementsByTagName( 'ul' )[0];


var listelements = list.getElementsByTagName( 'li' );
      for (var i = 0; i < listelements.length; i++) {
 
        if (
for ( var i = 0; i < listelements.length; i++ ) {
          listelements[i].getElementsByTagName("a")[0].innerHTML == name ||
if (
          listelements[i].getElementsByTagName("a")[0].href == link
listelements[i].getElementsByTagName( 'a' )[0].innerHTML == name ||
        ) {
listelements[i].getElementsByTagName( 'a' )[0].href == link
          list.removeChild(listelements[i]);
)
        }
{
      }
list.removeChild( listelements[i] );
    }
}
  } catch (e) {
}
    // let's just ignore what's happened
}
    return;
 
  }
 
} catch( e ) {
// let's just ignore what's happened
return;
}
}
}
function deleteToolBox(){
function deleteToolBox() {
    var toolBox = document.getElementById('p-tb');
  var toolBox = document.getElementById("p-tb");
    toolBox.parentNode.removeChild(toolBox);
  toolBox.parentNode.removeChild(toolBox);
}
}
function showToolBox(){
function showToolBox() {
    var toolBox = document.getElementById('p-tb');
  var toolBox = document.getElementById("p-tb");
    toolBox.style.visibility = "visible";
  toolBox.style.visibility = "visible";
}
}


function CustomizeModificationsOfSidebar() {
function CustomizeModificationsOfSidebar() {
   
  var isLoggedIn;
    var isLoggedIn;
 
    try {
        isLoggedIn = wgUserId;
        isLoggedIn = true;
    } catch( ReferenceError ){
        isLoggedIn = false;
    }


  try {
    isLoggedIn = wgUserId;
    isLoggedIn = true;
  } catch (ReferenceError) {
    isLoggedIn = false;
  }


    if( !isLoggedIn ){
  if (!isLoggedIn) {
        deleteToolBox();
    deleteToolBox();
    } else {
  } else {
        showToolBox();
    showToolBox();
    }
  }
  buildSideMenu();
}
}


jQuery( CustomizeModificationsOfSidebar );
jQuery(CustomizeModificationsOfSidebar);

Revision as of 03:43, 2 June 2019

/* Any JavaScript here will be loaded for all users on every page load. */

var ruleBooks = {
  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 ModifySidebar(action, section, name, link) {
  try {
    switch (section) {
      case "languages":
        var target = "p-lang";
        break;
      case "toolbox":
        var target = "p-tb";
        break;
      case "navigation":
        var target = "p-navigation";
        break;
      default:
        var target = "p-" + section;
        break;
    }

    if (action == "add") {
      var node = document
        .getElementById(target)
        .getElementsByTagName("div")[0]
        .getElementsByTagName("ul")[0];

      var aNode = document.createElement("a");
      var liNode = document.createElement("li");

      aNode.appendChild(document.createTextNode(name));
      aNode.setAttribute("href", link);
      liNode.appendChild(aNode);
      liNode.className = "plainlinks";
      node.appendChild(liNode);
    }

    if (action == "remove") {
      var list = document
        .getElementById(target)
        .getElementsByTagName("div")[0]
        .getElementsByTagName("ul")[0];

      var listelements = list.getElementsByTagName("li");

      for (var i = 0; i < listelements.length; i++) {
        if (
          listelements[i].getElementsByTagName("a")[0].innerHTML == name ||
          listelements[i].getElementsByTagName("a")[0].href == link
        ) {
          list.removeChild(listelements[i]);
        }
      }
    }
  } catch (e) {
    // let's just ignore what's happened
    return;
  }
}
function deleteToolBox() {
  var toolBox = document.getElementById("p-tb");
  toolBox.parentNode.removeChild(toolBox);
}
function showToolBox() {
  var toolBox = document.getElementById("p-tb");
  toolBox.style.visibility = "visible";
}

function CustomizeModificationsOfSidebar() {
  var isLoggedIn;

  try {
    isLoggedIn = wgUserId;
    isLoggedIn = true;
  } catch (ReferenceError) {
    isLoggedIn = false;
  }

  if (!isLoggedIn) {
    deleteToolBox();
  } else {
    showToolBox();
  }
  buildSideMenu();
}

jQuery(CustomizeModificationsOfSidebar);