/* SoundManager 2 - project home utility JS */ function _id(sID) { return document.getElementById(sID); } getSoundByURL = function(sURL) { return (typeof self.soundsByURL[sURL] != 'undefined'?self.soundsByURL[sURL]:null); } function init() { var o = document.getElementById('main'); var el = o.getElementsByTagName('dt'); for (var i=el.length; i--;) { if ((i+1)%2==0) { utils.addClass(el[i],'alt'); } } var el = o.getElementsByTagName('dl'); for (var i=el.length; i--;) { if ((i+1)%2==0) { utils.addClass(el[i],'alt'); } } } function Utils() { var self = this; this.hasClass = function(o,cStr) { return (typeof(o.className)!='undefined'?new RegExp('(^|\\s)'+cStr+'(\\s|$)').test(o.className):false); } this.addClass = function(o,cStr) { if (!o || !cStr) return false; // safety net if (self.hasClass(o,cStr)) return false; o.className = (o.className?o.className+' ':'')+cStr; } this.removeClass = function(o,cStr) { if (!o || !cStr) return false; // safety net if (!self.hasClass(o,cStr)) return false; o.className = o.className.replace(new RegExp('( '+cStr+')|('+cStr+')','g'),''); } this.toggleClass = function(o,cStr) { var m = (self.hasClass(o,cStr)?self.removeClass:self.addClass); m(o,cStr); } this.getElementsByClassName = function(className,tagNames,oParent) { var doc = (oParent||document); var matches = []; var i,j; var nodes = []; if (typeof(tagNames)!='undefined' && typeof(tagNames)!='string') { for (i=tagNames.length; i--;) { if (!nodes || !nodes[tagNames[i]]) { nodes[tagNames[i]] = doc.getElementsByTagName(tagNames[i]); } } } else if (tagNames) { nodes = doc.getElementsByTagName(tagNames); } else { nodes = doc.all||doc.getElementsByTagName('*'); } if (typeof(tagNames)!='string') { for (i=tagNames.length; i--;) { for (j=nodes[tagNames[i]].length; j--;) { if (self.hasClass(nodes[tagNames[i]][j],className)) { matches[matches.length] = nodes[tagNames[i]][j]; } } } } else { for (i=0; i'+o.innerHTML+''; _id('search-results').style.display = 'block'; _id('filter-box').style.display = 'block'; if (isClear) { _id('filter-box').style.paddingBottom = '0px'; _id('filter-box').style.display = 'none'; } else { _id('filter-box').style.paddingBottom = '0px'; if (!navigator.userAgent.match(/msie/i)) { _id('filter-box').style.paddingBottom = Math.max(0,(document.documentElement.scrollTop || window.scrollY)-utils.getOffY(_id('filter-box'))-parseInt(_id('filter-box').offsetHeight)-20)+'px'; } _id('filter-box').style.display = 'block'; // if ((!document.documentElement.scrollTop && !window.scrollY)) _id('filter-box').style.display = 'none'; } if (lastSelected) { if (lastSelected == o) { utils.toggleClass(lastSelected,'active'); } else { utils.removeClass(lastSelected,'active'); utils.addClass(o,'active'); } } else { utils.addClass(o,'active'); } lastSelected = o; // cancel bubble, too? return false; } } function getLiveData() { getDynamicData(); // reinvigorate.net is a handy (and free!) stats tracking service thingy. you should check it out. var is_live = (document.domain && document.domain.match(/schillmania.com/i) && typeof re_ != 'undefined'); loadScript('http://include.reinvigorate.net/re_.js'); setTimeout(function(){ if (typeof re_ != 'undefined') re_(is_live?'f6795-v062d0xv4u':'u8v2l-jvr8058c6n'); },3000); } function getDynamicData() { // Attempt to fetch data from schillmania.com: "Get Satisfaction" topics, version updates etc. loadScript('http://www.schillmania.com/services/soundmanager2/info/?version='+soundManager.versionNumber+'&rnd='+parseInt(Math.random()*1048576)); } function loadScript(sURL,onLoad) { var loadScriptHandler = function() { var rs = this.readyState; if (rs == 'loaded' || rs == 'complete') { this.onreadystatechange = null; this.onload = null; window.setTimeout(onLoad,20); } } function scriptOnload() { this.onreadystatechange = null; this.onload = null; window.setTimeout(onLoad,20); } var oS = document.createElement('script'); oS.type = 'text/javascript'; if (onLoad) { oS.onreadystatechange = loadScriptHandler; oS.onload = scriptOnload; } oS.src = sURL; document.getElementsByTagName('head')[0].appendChild(oS); } function doAltShortcuts() { var o = _id('shortcuts-list'); if (!o) { return false; } var oParents = []; var oLIs = o.getElementsByTagName('li'); var isIgnore = null; var offset = 0; for (var i=0; i