<!--
function addEvent(elm, evType, fn, useCapture) {
 // cross-browser event handling for IE5+, NS6 and Mozilla 
 // By Scott Andrew 
 if (elm.addEventListener) { 
 elm.addEventListener(evType, fn, useCapture); 
 return true; 
 } else if (elm.attachEvent) { 
 var r = elm.attachEvent('on' + evType, fn); 
 return r; 
 } else {
 elm['on' + evType] = fn;
 }
}

// Here's the smart link code

function handleLink(e) {
 var el;
 if (window.event && window.event.srcElement)
 el = window.event.srcElement;
 if (e && e.target)
 el = e.target;
 if (!el)
 return;

 while (el.nodeName.toLowerCase() != 'a' &&
 el.nodeName.toLowerCase() != 'body')
 el = el.parentNode;

 if (document.getElementById('newwin') &&
 document.getElementById('newwin').checked) {
 window.open(el.href);
 if (window.event) {
 window.event.cancelBubble = true;
 window.event.returnValue = false;
 }
 if (e && e.stopPropagation && e.preventDefault) {
 e.stopPropagation();
 e.preventDefault();
 }
 }
}

function cancelClick() {
 if (document.getElementById('newwin') &&
 document.getElementById('newwin').checked) {
 return false;
 }
 return true;
}

// here's the bit that installs the listeners

function addListeners() {
 if (!document.getElementById)
 return;

 var all_links = document.getElementsByTagName('a');
 for (var i = 0; i < all_links.length; i++) {
 addEvent(all_links[i], 'click', handleLink, false);
 all_links[i].onclick = cancelClick;
 }
}

addEvent(window, 'load', addListeners, false);
-->