var win = null; function NewWindow(mypage,myname,w,h,scroll){ LeftPosition = (screen.width) ? (screen.width-w)/2 : 0; TopPosition = (screen.height) ? (screen.height-h)/2 : 0; settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable' win = window.open(mypage,myname,settings) } function selectRedirect(elementId) { var selectedItem = document.getElementById(elementId).selectedIndex; choice = document.getElementById(elementId).options[selectedItem].value; top.location.href=choice; } function magOverEffect(mag) { var metaArray = document.getElementsByName(mag.name); for (var i=0; i 0){ this.titleElm = document.createElement("div"); this.titleElm.style.position = 'absolute'; this.titleElm.style.left = '0'; this.titleElm.style.top = '0'; this.titleElm.style.margin = '0'; this.titleElm.style.padding = '0'; this.titleElm.style.width = '150px'; this.titleElm.style.fontWeight='bold'; this.titleElm.style.color = '#ffffff'; this.titleElm.style.visibility = 'hidden'; this.titleElm.style.textAlign = 'left'; this.titleElm.style.opacity = '.85'; this.titleElm.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(opacity=75)'; if(this.topImagePath){ this.titleTopImage = document.createElement("img"); this.titleTopImage.setAttribute("src", this.topImagePath); this.titleElm.appendChild(this.titleTopImage); this.titleTopImage.style.margin = '0'; this.titleTopImage.style.padding = '0'; this.titleTopImage.style.display = 'block'; } this.titleTextElm = document.createElement("p"); this.titleElm.appendChild(this.titleTextElm); this.titleTextElm.style.backgroundColor = '#FF7E27'; this.titleTextElm.style.margin = '0'; this.titleTextElm.style.padding = '0 0.5em'; if(this.bottomImagePath){ this.titleBottomImage = document.createElement("img"); this.titleBottomImage.setAttribute("src", this.bottomImagePath); this.titleElm.appendChild(this.titleBottomImage); this.titleBottomImage.style.margin = '0'; this.titleBottomImage.style.padding = '0'; this.titleBottomImage.style.display = 'block'; } document.body.appendChild(this.titleElm); this.useMSFilter = typeof this.titleElm.style.filter != "undefined"; this.applyEvents(); } } }, applyEvents : function (){ var oElm; var strClassName; for(var i=0; i 0){ if(this.fadeTimer){ clearTimeout(this.fadeTimer); } if(this.currentElm){ this.hideTitle(null, false, true); } this.currentElm = oElm; this.currentTitle = this.currentElm.getAttribute("title"); this.currentElm.setAttribute("title", ""); this.currentX = oEvent.clientX; this.currentY = oEvent.clientY; this.timer = setTimeout("GLT.showTitle()", GLT.timeBeforeShow); } }, stopTimer : function (oElm){ clearTimeout(GLT.timer); }, showTitle : function (){ this.setTitlePos(); //this.titleTextElm.innerHTML = this.currentTitle; this.titleTextElm.innerHTML = ""; var oText = document.createTextNode(this.currentTitle); this.titleTextElm.appendChild(oText); this.titleElm.style.visibility = "visible"; if(this.fadeIn){ this.currentFadeLevel = this.fadeStartLevel; this.fadeIn(); } }, hideTitle : function (oElm, oEvent, forceHide){ if(this.currentElm && (oElm || forceHide)){ var bIsChildOfCurrentElm = false; if(typeof oEvent != "undefined" && typeof oEvent == "object"){ var oEventTarget = (typeof oEvent.relatedTarget != "undefined")? oEvent.relatedTarget : oEvent.toElement; if(oEventTarget){ while(!bIsChildOfCurrentElm && oEventTarget && oEventTarget.nodeName && oEventTarget.nodeName.search(/body/i) == -1){ if(oEventTarget == oElm){ bIsChildOfCurrentElm = true; break; } oEventTarget = oEventTarget.parentNode; } } } if(!bIsChildOfCurrentElm){ this.stopTimer(); if(this.fadeOutTitle && (typeof forceHide == "undefined" || !forceHide)){ this.fadeOut(); } else{ clearTimeout(this.fadeTimer); this.currentElm.setAttribute("title", this.currentTitle); this.currentElm = null; this.titleElm.style.visibility = "hidden"; } } } }, setTitlePos : function (){ var arrScroll = this.getWinScroll(); this.titleElm.style.left = this.currentX + arrScroll[0] + this.titleOffsetX + "px"; this.titleElm.style.top = this.currentY + arrScroll[1] + this.titleOffsetY + "px"; // Modification: The next 4 lines check the right hand side of the box and ensure it does not go over the edge of the screen. var checkRight = document.body.offsetWidth - (this.currentX + arrScroll[0] + this.titleOffsetX); if (checkRight < 150) { this.titleElm.style.left = (document.body.offsetWidth - 151) + "px"; } }, fadeIn : function (fadeOut){ this.currentFadeLevel = this.currentFadeLevel + this.fadeIncrement; if(this.currentFadeLevel < this.originalFadeLevel){ this.fadeTimer = setTimeout("GLT.fadeIn()", GLT.timePerFadeStep); } else{ this.currentFadeLevel = this.originalFadeLevel; clearTimeout(this.fadeTimer); } this.setFade(); }, fadeOut : function (){ this.currentFadeLevel = this.currentFadeLevel - this.fadeIncrement; if(this.currentFadeLevel > this.fadeStartLevel){ this.fadeTimer = setTimeout("GLT.fadeOut()", GLT.timePerFadeStep); } else{ this.currentFadeLevel = this.originalFadeLevel; this.hideTitle(null, false, true); } this.setFade(); }, setFade : function (){ // This line is b/c of a floating point bug in JavaScript this.currentFadeLevel = Math.round(this.currentFadeLevel * 10) / 10; if(this.titleElm){ if(this.useMSFilter){ this.titleElm.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=" + (this.currentFadeLevel * 100) + ")"; } else{ this.titleElm.style.opacity = this.currentFadeLevel; } } }, getWinScroll : function (){ var intXScroll = (typeof window.pageXOffset != "undefined")? window.pageXOffset : document.body.scrollLeft; var intYScroll = (typeof window.window.pageYOffset != "undefined")? window.window.pageYOffset : (document.documentElement && document.documentElement.scrollTop > 0)? document.documentElement.scrollTop : document.body.scrollTop; return [intXScroll, intYScroll]; }, closeSession : function (oEvent){ this.removeEvent(window, "load", function(){GLT.init();}, false); GLT = null; delete GLT; }, addEvent : function (oObject, strEvent, oFunction, bCapture){ if(oObject){ if(oObject.addEventListener){ oObject.addEventListener(strEvent, oFunction, bCapture); } else if(window.attachEvent){ oObject.attachEvent(("on" + strEvent), oFunction) } } }, removeEvent : function (oObject, strEvent, oFunction, bCapture){ if(oObject){ if(oObject.removeEventListener){ oObject.removeEventListener(strEvent, oFunction, false); } else if(window.detachEvent){ oObject.detachEvent(("on" + strEvent), oFunction) } } } }; // --- GLT.addEvent(window, "load", function(){GLT.init();}, false); // --- // Utility functions // --- function getElementsByAttribute(oElm, strTagName, strAttributeName, strAttributeValue){ var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName); var arrReturnElements = new Array(); var oAttributeValue = (typeof strAttributeValue != "undefined")? new RegExp("(^|\\s)" + strAttributeValue + "(\\s|$)") : null; var oCurrent; var oAttribute; for(var i=0; i 0){ if(typeof strAttributeValue == "undefined" || (oAttributeValue && oAttributeValue.test(oAttribute))){ arrReturnElements.push(oCurrent); } } } return arrReturnElements; } // --- if(typeof Array.prototype.push != "function"){ Array.prototype.push = ArrayPush; function ArrayPush(value){ this[this.length] = value; } } // --- var timerlen = 5; var slideAniLen = 500; var timerID = new Array(); var startTime = new Array(); var obj = new Array(); var endHeight = new Array(); var moving = new Array(); var dir = new Array(); function slidedown(objname){ if(moving[objname]) return; if(document.getElementById(objname).style.display != "none") return; // cannot slide down something that is already visible moving[objname] = true; dir[objname] = "down"; startslide(objname); } function slideup(objname){ if(moving[objname]) return; if(document.getElementById(objname).style.display == "none") return; // cannot slide up something that is already hidden moving[objname] = true; dir[objname] = "up"; startslide(objname); } function startslide(objname){ obj[objname] = document.getElementById(objname); endHeight[objname] = parseInt(obj[objname].style.height); //alert(objname + " "); //alert(obj[objname].style.height); startTime[objname] = (new Date()).getTime(); //alert(parseInt(obj[objname].style.height)); //alert(endHeight[objname]); if(dir[objname] == "down"){ obj[objname].style.height = "1px"; } obj[objname].style.display = "block"; timerID[objname] = setInterval('slidetick(\'' + objname + '\');',timerlen); } function slidetick(objname){ var elapsed = (new Date()).getTime() - startTime[objname]; if (elapsed > slideAniLen) endSlide(objname) else { var d =Math.round(elapsed / slideAniLen * endHeight[objname]); if(dir[objname] == "up") d = endHeight[objname] - d; obj[objname].style.height = d + "px"; } return; } function endSlide(objname){ clearInterval(timerID[objname]); if(dir[objname] == "up") obj[objname].style.display = "none"; obj[objname].style.height = endHeight[objname] + "px"; delete(moving[objname]); delete(timerID[objname]); delete(startTime[objname]); delete(endHeight[objname]); delete(obj[objname]); delete(dir[objname]); return; } function toggleSlide(objname,linkdivname){ if(document.getElementById(objname).style.display == "none"){ // div is hidden, so let's slide down slidedown(objname); //document.getElementById(imgname).src = "/includes/languages/english/images/magazine-c_up.gif"; if (linkdivname!="") document.getElementById(linkdivname).innerHTML = 'Magazine Categories'; }else{ // div is not hidden, so slide up slideup(objname); //document.getElementById(imgname).src = "/includes/languages/english/images/magazine-c.gif"; if (linkdivname!="") document.getElementById(linkdivname).innerHTML = 'Magazine Categories'; } } function toggleLayer( whichLayer ) { var elem; var vis; if( document.getElementById ) // this is the way the standards work elem = document.getElementById( whichLayer ); else if( document.all ) // this is the way old msie versions work elem = document.all[whichLayer]; else if( document.layers ) // this is the way nn4 works elem = document.layers[whichLayer]; vis = elem.style; // if the style.display value is blank we try to figure it out here if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined) vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none'; vis.display = (vis.display==''||vis.display=='block')?'none':'block'; }