/*Copyright (C) 2007 Paul Mackinlay (info@webotech.co.uk)*/ _ws_warn(); function _ws_warn() { var d=document; var w=window; var u='http://www.webotech.co.uk/nohttpref.html'; var u1='http://www.webotech.co.uk/getjskey.html'; if (d.referrer) { _na(); } else { var el = d.createElement("span"); var st = el.style; var wrn = 'WARNING!'; _out(); d.body.appendChild(el); jslAddEvent(el,'mouseover',_over); jslAddEvent(el,'mouseout',_out); jslAddEvent(el,'click',_cl); jslAddEvent(w,'scroll',_scr); } w._ws_warn = function(){return}; function _na() { var s = "This page is trying to access code with an invalid license key.\n- Click OK to find out how to stop this message\n- Click cancel to continue"; var c = confirm(s); if (c) { w.top.location = u1; } } function _cl() { jslRemoveEvent(el,'mouseover',_over); jslRemoveEvent(el,'mouseout',_out); jslRemoveEvent(el,'click',_cl); jslRemoveEvent(w,'scroll',_scr); w.top.location = u; } function _over() { jslSetOpaque(el,100); el.innerHTML = wrn+' your system is not configured properly, click for details'; st.backgroundColor='#66cc33'; } function _out() { jslSetOpaque(el,50); el.innerHTML = wrn+' system configuration problem'; _style(); } function _scr() { var p = _getTopLeft(); st.left=p.left+'px'; st.top=p.top+'px'; } function _style() { var p = _getTopLeft(); st.color='#ffffff'; st.backgroundColor='#ff0000'; st.padding='4px'; st.fontFamily='arial'; st.fontSize='14px'; st.fontWeight='bold'; st.borderRight='1px solid #000000'; st.borderBottom='1px solid #000000'; st.position='absolute'; st.left=p.left+'px'; st.top=p.top+'px'; st.cursor='pointer'; st.zIndex='9999'; } function _getTopLeft() { var p = new Object(); p.top = w.pageYOffset?w.pageYOffset:d.documentElement.scrollTop?d.documentElement.scrollTop:d.body.scrollTop; p.left = w.pageXOffset?w.pageXOffset:d.documentElement.scrollLeft?d.documentElement.scrollLeft:d.body.scrollLeft; return p; } function jslRemoveEvent(subj,event,fn) { if (jslBrowserType()=="IE") { subj.detachEvent("on"+event, fn); } else { subj.removeEventListener(event,fn,false); } } function jslAddEvent(subj,event,fn) { if (jslBrowserType()=="IE") { subj.attachEvent("on"+event, fn); } else { subj.addEventListener(event,fn,false); } } function jslSetOpaque(node, value) { if (jslBrowserType()=="IE") { node.style.filter="alpha(opacity="+value+")"; } else { node.style.opacity=value/100; } } function jslBrowserType() { if (window.navigator.userAgent.match(/MSIE/)){ return "IE"; } if (window.navigator.userAgent.match(/Gecko\/[0-9]{8}/)){ return "Gecko"; } return "unknown"; } } /*Copyright (C) 2006 Paul Mackinlay (info@webotech.co.uk)*/ function showImg(d,imgDiv,img,title,src,relId,ref) { var self = this; var imgNode = d.getElementById(img); imgNode.showImg = {}; var refNode = d.getElementById(imgDiv); var titleNode = d.getElementById('showImg.title'); var relativeNode; if (relId) { relativeNode = d.getElementById(relId); } var intervalId; var timeoutId; var fadeOpacity = 10; var fadeFrequency = 50 var timeToRender = 200; var timeToLive = parseInt(((100/fadeOpacity) * (fadeFrequency + timeToRender) * 1.1) + 1); _do(); function _clear () { clearInterval(intervalId); clearTimeout(timeoutId); _setOpaque(imgNode, 100); jslRemoveEvent(imgNode,'load',_startFade); } function _do() { jslAddEvent(imgNode,'load',_startFade); _refEvents(imgNode,ref); if (title && !titleNode) { titleNode = document.createElement("span"); titleNode.id = 'showImg.title'; } _delTitle(); if (title) { _setStyle(titleNode, imgNode); _refEvents(titleNode,ref); } _setTitle(); if (imgNode.src != src) { _setOpaque(imgNode, 0); imgNode.src = src; } } function _refEvents(node,apply) { if (apply) { jslRemoveEvent(node,'click',_refUrl); jslAddEvent(node,'click',_refUrl); node.title = 'click for more information'; node.style.cursor = 'pointer'; } else { jslRemoveEvent(node,'click',_refUrl); node.title = ''; node.style.cursor = 'default'; } } function _refUrl() { location = ref; } function _getTopLeftCoords(node) { var topLeft = {}; topLeft.left = jslGetAbsWidth(node); topLeft.top = (jslGetAbsHeight(node) - node.offsetHeight); if (relativeNode) { var xCorrect = jslGetAbsWidth(relativeNode); var yCorrect = (jslGetAbsHeight(relativeNode) - relativeNode.offsetHeight); topLeft.left -= xCorrect; topLeft.top -= yCorrect; } return topLeft; } function _startFade(e) { if (!intervalId) { intervalId = setInterval(_fadeIn,fadeFrequency); timeoutId = setTimeout(_clear,timeToLive); } } function _setStyle(node, refNode) { var topLeft = _getTopLeftCoords(refNode); node.style.backgroundColor = "#9bcef9"; node.style.padding = "1"; node.style.position = "absolute"; node.style.left = (topLeft.left+2)+"px"; node.style.top = (topLeft.top+2)+"px"; node.style.whiteSpace = 'nowrap'; } function _fadeIn(e) { var node = imgNode; var currentOpacity = node.showImg.opacity; if (currentOpacity < 100) { currentOpacity += fadeOpacity; _setOpaque(node, currentOpacity); } else { _delTitle(); _setTitle(); _clear(); } } function _setOpaque(node, value) { if (jslBrowserType()=="IE") { node.style.filter="alpha(opacity="+value+")"; } else { node.style.opacity=value/100; } if ('showImg' in node) { node.showImg.opacity = value; } } function _setTitle() { if (title && titleNode) { titleNode.appendChild(document.createTextNode(title)); _setOpaque(titleNode, 80); refNode.appendChild(titleNode) } } function _delTitle() { if (titleNode) { _setOpaque(titleNode, 0); while (titleNode.firstChild) { titleNode.removeChild(titleNode.firstChild); } } } function jslRemoveEvent(subj,event,fn) { if (jslBrowserType()=="IE") { subj.detachEvent("on"+event, fn); } else { subj.removeEventListener(event,fn,false); } } function jslAddEvent(subj,event,fn) { if (jslBrowserType()=="IE") { subj.attachEvent("on"+event, fn); } else { subj.addEventListener(event,fn,false); } } function jslGetAbsWidth(el) { var w = el.offsetLeft; while (el.offsetParent) { var elW=el.offsetParent.offsetLeft; if (elW > 1) { w += elW; } el = el.offsetParent; } return w; } function jslGetAbsHeight(el) { var h = el.offsetHeight + el.offsetTop; while (el.offsetParent) { var elH=el.offsetParent.offsetTop; if (elH > 1) { h += elH; } el = el.offsetParent; } return h; } function jslBrowserType() { if (window.navigator.userAgent.match(/MSIE/)){ return "IE"; } if (window.navigator.userAgent.match(/Gecko\/[0-9]{8}/)){ return "Gecko"; } return "unknown"; } }