//////////////////////////////////////////////////////////////////////////////////////////// // Adev - Advanced Development, (c)2007 - All rights reserved. // // Writer : Roy Hagg // // Contact: www.adev.nl // //////////////////////////////////////////////////////////////////////////////////////////// var version = 107; //////////////////////////////////////////////////////////////////////////////////////////// var agent = navigator.userAgent.toLowerCase(); var major = parseInt(navigator.appVersion); var minor = parseFloat(navigator.appVersion); // browser test functions var dom = (document.getElementById) ? true : false; var ns5 = ((agent.indexOf("gecko")>-1) && dom) ? true: false; var ns4 = (document.layers && !dom) ? true : false; var op = (window.opera) ? true : false; var ie4 = (document.all && !dom) ? true : false; var ie5 = ((agent.indexOf("msie 5")>-1) && dom) ? true : false; var ie55 = ((agent.indexOf("msie 5.5")>-1) && dom) ? true : false; var ie6 = ((agent.indexOf("msie 6")>-1) && dom) ? true : false; var ie7 = ((agent.indexOf("msie 7")>-1) && dom) ? true : false; var ie = ((agent.indexOf("msie")>-1) && dom) ? true : false; //////////////////////////////////////////////////////////////////////////////////////////// // mouse capture functions var mouseX = -2000; var mouseY = -2000; mayStart = false; var ieComp = false; var comp = false; var ooX = 0; var ooY = 0; if((document.compatMode && document.compatMode != "BackCompat")) { comp = true; if(ie6|ie7) ieComp = true; } if(ns4) {document.captureEvents(Event.MOUSEMOVE);} document.onmousemove = mouseMove; function mouseMove(evt) { if(!mayStart) { if( ie5 | ie55 | ie6 ) { if(document.body!=null) { var r = document.body.readyState; if(r=="complete") window.setTimeout("mayStart = true;", 200); } return; } else { window.setTimeout("mayStart = true;", 200); return; } } if(ns4|ns5) { mouseX = evt.pageX; mouseY = evt.pageY; } else if(ieComp) { mouseX = event.clientX;//+document.documentElement.scrollLeft; mouseY = event.clientY+document.documentElement.scrollTop; } else { mouseX = window.event.clientX + document.body.scrollLeft; mouseY = window.event.clientY + document.body.scrollTop; } moveToolTip(mouseX,mouseY); try {mouseMoveEvent(evt);}catch(e){} try {frontMouseMoveEvent(evt);}catch(e){} } //////////////////////////////////////////////////////////////////////////////////////////// // Element functions function getElement(id) { if(dom) { return document.getElementById(id); } return 0; } function getElementWidthStr(id) { if(dom) { return document.getElementById(id).offsetWidth; } return 0; } function getElementHeightStr(id) { if(dom) { return document.getElementById(id).offsetHeight; } return 0; } function getElementWidth(id) { if(dom) { return id.offsetWidth; } return 0; } function getElementHeight(id) { if(dom) { return id.offsetHeight; } return 0; } function getElementXPos(item) { if(dom) { xPos = item.offsetLeft; tempEl = item.offsetParent; while (tempEl != null) { xPos += tempEl.offsetLeft; tempEl = tempEl.offsetParent; } return xPos; } return 0; } function getElementYPos(item) { if(dom) { yPos = item.offsetTop; tempEl = item.offsetParent; while (tempEl != null) { // For IE 5.5,6 and maybe 7 relative element bug. try { if(tempEl.style.position=="relative") { // skip and get parent anker node. if(tempEl.parentNode.id.indexOf("iec")==0) tempEl = tempEl.parentNode; } } catch(e){} yPos += (tempEl.offsetTop - tempEl.scrollTop); tempEl = tempEl.offsetParent; } if(comp & !op) return yPos; else return yPos + getScrollTop(); } return 0; } var hasOpener = false; var windowHasParent = false; var testForParent = false; var skipOpenerTest = false; testOpenerClose(); function testOpenerClose() { if(skipOpenerTest) return; try { var openerItem = null; var windowHasParent = false; if((parent!=null) & (testForParent)) { windowHasParent=true; if(parent.window.opener!=null) openerItem = parent.window.opener; } else openerItem = window.opener; if(openerItem!=null) { try { if(openerItem.closed==true) { window.close(); if(windowHasParent) parent.window.close(); } else { try { if(openerItem.destroyApplication()) { window.close(); if(windowHasParent) parent.window.close(); } } catch(d){} } } catch(e) { window.close(); } } if((openerItem==null) & (!testForParent)) { if(hasOpener) { if(windowHasParent) { parent.window.close(); } else { window.close(); } } } else { hasOpener = true; window.setTimeout("testOpenerClose();", 1000); } } catch(ae){} } //////////////////////////////////////////////////////////////////////////////////////////// // window functions function newWindow(url, name) { try { var newwin = window.open(url,name); newwin.focus(); } catch(e){} } function newPopupRet(url, name, w, h, screenCenter, topCor, leftCor, s) { var ofsetX = 0; var ofsetY = 0; var screen_w = getScreenWidth(); var screen_h = getScreenHeight(); if(isNaN(window.screenX)) { ofsetX = window.screenLeft; ofsetY = window.screenTop; } else { //ofsetX = window.screenX; //ofsetY = window.screenY; } var l = (screen_w/2)-(w/2); var t = (screen_h/2)-((h+21)/2); if( (ofsetX!="undefined") & (ofsetX>1) & (screenCenter!=true) ) { var win_w=getWindowWidth(); l = (win_w/2)-(w/2); l+=ofsetX; if(leftCor!=null) l+=leftCor; } if( (ofsetY!="undefined") & (ofsetY>1) & (screenCenter!=true) ) { var win_h=getWindowHeight(); t = (win_h/2)-(h/2); t+=ofsetY-20; if(topCor!=null) t+=topCor; } if(topCor==-1) { t=0; h=1; } if(leftCor==-1) { l=0; w=1; } l = parseInt(l); t = parseInt(t); sc = "no"; if(s!=null) if(s==1) sc="yes"; var popWindow = window.open(url,name,'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars='+sc+',resizable=yes,width='+w+',height='+h+',left='+l+',top='+t+''); popWindow.focus(); return popWindow; } function newPopup(url, name, w, h, screenCenter, topCor, leftCor, s) { newPopupRet(url, name, w, h, screenCenter, topCor, leftCor, s); } function getScreenWidth() { return parseInt(screen.width); } function getScreenHeight() { return parseInt(screen.height); } function getWindowWidth() { /* if(typeof(window.innerWidth )=='number') { return window.innerWidth; //Non-IE } else if(document.documentElement && document.documentElement.clientWidth) { return document.documentElement.clientWidth; } else if( document.body && document.body.clientWidth) { return document.body.clientWidth; } */ if( (ie7|ie6) & comp) return document.documentElement.clientWidth; else if(ie4|dom) return parseInt(window.document.body.clientWidth); else return parseInt(window.innerWidth); } function getWindowHeight() { if(typeof(window.innerHeight )=='number') { return window.innerHeight; //Non-IE } else if(document.documentElement && document.documentElement.clientHeight) { return document.documentElement.clientHeight; } else if( document.body && document.body.clientHeight) { return document.body.clientHeight; } } function getScrollTop() { if(ie4|dom) { if(comp) { return document.documentElement.scrollTop; } else { return document.body.scrollTop; } } else { return window.pageYOffset; } } function getScrollLeft() { if(ie4|dom) { if(comp) { return document.documentElement.scrollLeft; } else { return document.body.scrollLeft; } } else { return window.pageXOffset; } } var windowDone = false; function getTopWindow() { try { if(opener!=null) { if(opener.getTopWindow!=null) return opener.getTopWindow(); } } catch(e) {} try { if(parent.window.opener!=null) { if(parent.window.opener.getTopWindow!=null) return parent.window.opener.getTopWindow(); } } catch(e) {} try { if(parent!=null) { if(!windowDone) { windowDone = true; if(parent.getTopWindow!=null) return parent.getTopWindow(); } else { windowDone = false; } } } catch(e) {} return this; } //////////////////////////////////////////////////////////////////////////////////////////// // layer functions function getLayer(layer) { if(ns4) { return eval('document.'+layer); } else if(ie4) { return document.all[layer]; } else if(dom) { return document.getElementById(layer); } return null; } function showLayer(strLayer) { try { if(ie4|dom) { layer = getLayer(strLayer); layer.style.visibility = 'visible'; } else if(document.layers) { layer = getLayer(strLayer); layer.visibility = 'visible'; } } catch(e){} } function hideLayer(strLayer) { try { if(ie4|dom) { layer = getLayer(strLayer); layer.style.visibility = 'hidden'; } else if(document.layers) { layer = getLayer(strLayer); layer.visibility = 'hidden'; } } catch(e) {} } var lastLayer = ""; function switchLayer(strLayer) { if(lastLayer!="") { hideLayer(lastLayer); } lastLayer=strLayer; showLayer(strLayer); } var lastLayer = ""; function hideLastLayer() { if(lastLayer!="") { hideLayer(lastLayer); lastLayer = ""; } } function getLayerWidth(layer) { if(ie4|dom) { return getLayer( layer ).offsetWidth; } else { return document[layer].clip.width; } } function getLayerHeight(layer) { if(ie4|dom) { return getLayer( layer ).offsetHeight; } else { return document[layer].clip.height; } } // * sort of function setLayerWidth(layer,w) { if(ie4|dom) { getStyle( layer ).width=w+"px"; } else { document[layer].clip.width=w; } } // * sort of function setLayerHeight(layer,h) { if( document.getElementById || document.all ) { getStyle( layer ).height=h+"px"; } else { document[layer].clip.height=h; } } function clip(layer,top,right,bottom,left) { if(ie4|dom) { getStyle( layer ).clip='rect('+top+' '+right+' '+bottom+' '+left+')'; } else { document[layer].clip.top = top; document[layer].clip.left = left; document[layer].clip.bottom = bottom; document[layer].clip.right = right; } } function getStyle(layer) { if(document.getElementById) { return document.getElementById(layer).style; } else if(document.all) { return document.all[layer].style; } else { return document[layer]; } } function setLayerPos(strLayer,x,y) { if(ie4|dom) { layer = getLayer(strLayer); layer.style.left = x+"px"; layer.style.top = y+"px"; } else if(document.layers) { layer = getLayer(strLayer); layer.pageX = x; layer.pageY = y; } } function writeLayer(strLayer,content) { if(ie4|dom) { getLayer(strLayer).innerHTML = content; } else if(document.layers) { var layer = getLayer(strLayer); layer.document.open(); layer.document.write(content); layer.document.close(); } } function addToDocument(line) { if(ie) { document.body.insertAdjacentHTML("afterBegin",line); } else { var range = document.createRange(); range.setStartBefore(document.body.lastChild); var docFrag = range.createContextualFragment(line); document.body.appendChild(docFrag); } } // ?? function createLayer(id,position, left,top,width,height,content,bgColor,visibility,zIndex) { if(ns4) { document.layers[id] = new Layer(width) var lyr = document.layers[id] lyr.left = left lyr.top = top if (height!=null) lyr.clip.height = height if (bgColor!=null) lyr.bgColor = bgColor if (zIndex!=null) lyr.zIndex = zIndex lyr.visibility = (visibility=='hidden')? 'hide' : 'show' if(content) { lyr.document.open() lyr.document.write(content) lyr.document.close() } } else { var str = '\n
| ';
t += ' ';
t += ' ';
if( ( (ie55|ie6) & !op) )
{
t += '';
t += '';
t += ' | |
| '; t += ' |