/* but.... but.... there is no ajax here! true! Im pulling all the data at once and storing it in the javascript environment. This is beneficial because Im pulling roughly the same amount of data to draw the home page anyway. Also, downloading the whole chunk at 25k (or so) is faster than the same amount in smaller periodic chunks. Ajax would only be appriopriate if the data set were much larger, or if user interraction changed the content. "The better part of valor is discretion" (1 Henry IV, 5:4). */ window.onload = function (){ ge("ill, illUList").originalHeight = getHiddenHeight(ge("ill, illUList")) ge("ill, illUList").style.height = getHiddenHeight(ge("ill, illUList")) + "px"; loaded = true; assignBehaviors(); if(location.hash != ''){parseHash()} } var loaded = false; var activePanel = "ill, ill"; var activeIndex; function isUndefined(a){return typeof a == 'undefined';} function parseHash(){ var thisHash = location.hash.substr(9,location.hash.length - 9); if(thisHash.length == 3){ showPane(thisHash); if(thisHash != "inf") populateFullViewPanel(thisHash,0); return; } if(thisHash.substr(0,2)=="ML"){ var thisSection = thisHash.substr(2,3) var thisIndex = thisHash.substr(5,thisHash.length - 5) showPane(thisSection); populateFullViewPanel(thisSection,thisIndex); return; } if(thisHash.substr(0,3)=="inf"){ showInfoSection(thisHash); return; } } function showInfoSection(section){ hideFullViewPanel(); ge("inf_services").style.display = "none"; ge("inf_method").style.display = "none"; ge("inf_access").style.display = "none"; //ge("inf_interaction").style.display = "none"; ge("inf_technology").style.display = "none"; if(section){ changeOpac(0, section); ge(section).style.display = ""; opacity(section,0,100,500); } } function assignBehaviors(){ var menuLinks = getElementsByClassName(ge("panels"),"a","menulink"); var paneLinks = getElementsByClassName(ge("panels"),"a","paneLink"); for(var i=0;i"; fullViewPanel.style.display = ""; } /* Written by Jonathan Snook, http://www.snook.ca/jonathan Add-ons by Robert Nyman, http://www.robertnyman.com [ retrofitted to use XPath where available and to fix the ] [ regEx pattern that stopped working in FF. XPath portions ] [ and the new pattern were taken from prototype. ] [ ] [ -greg ] */ function getElementsByClassName(oElm, strTagName, strClassName){ if (!!document.evaluate) { var expression = ".//*[contains(concat(' ', @class, ' '), ' " + strClassName + " ')]"; var results = []; var query = document.evaluate(expression, oElm || document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); for (var i = 0, length = query.snapshotLength; i < length; i++){results.push(query.snapshotItem(i));} return results; } var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName); var arrReturnElements = new Array(); strClassName = strClassName.replace(/-/g, "\-"); var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)"); // the original pattern was broken. This pattern courtesy of prototype var oElement; for(var i=0; i