function doLoad(e)
{
        var links = document.getElementsByTagName('a');
        var currentLink = '';
        for (var index = 0; index < links.length; index++)
        {
                currentLink = links[index];
                
                //do not add event handlers to email address links
                if (! /^mailto/i.test( currentLink.href ) ) //regex will match links to email addresses
                {
                        addEventHandler(currentLink, "click", function(e) { doHandleClick(e); }, false ); 
                }
               
        }
        
        var images = document.getElementsByTagName('img');
        var currentImage = '';
        for (var index = 0; index < images.length; index++)
        {
                currentImage = images[index];
                addEventHandler(currentImage, "click", function(e) { doHandleClick(e); }, false ); 
        }

}       


function eventTrigger (e) 
{
        if ( !e ) 
        {
                e = event;
        }
        return e.target || e.srcElement;
}

/* returns the event objct instance after dealing with the cross-browser issues */
function getEvent(e)
{
    if ( !e ) 
    {
        e = event;
    }
    return e;
}


function doHandleClick( e )
{
        var triggerObj = eventTrigger( e );
        var url = '';


        if (triggerObj.tagName == 'A' || triggerObj.tagName == 'DIV')
        {
                url = triggerObj.href;
        }
        else if (triggerObj.tagName == 'IMG')
        {
                url = triggerObj.parentNode.href;
        }
        
        //NB. synchronised method name with the ReflectAURL.js
        parent.Reflect_reflectURL( url );
        
        return false;
       
 }
 
 
function isIE()
{
        if (window.addEventListener)
        {
                return false;
        }
        else
        {
                return true;
        }        
} 

function closePopupOnEsc(e)
{
    var ESC_KEY_VALUE = 27;
    var keyValue = -1;
	var eventObj = getEvent(e);
	
	
    if(eventObj.keyCode) // IE
    {
        keyValue = eventObj.keyCode;
    }
    else if(eventObj.which) // Netscape/Firefox/Opera
    {
        keyValue = eventObj.which;
    }
	
    if ( keyValue == ESC_KEY_VALUE )
    {
        nd(); //overlib funtion to close the popup
    }
}


function doAddKeyListener(e)
{
	addEventHandler(document,"keyup", function(e) { closePopupOnEsc(e); } , false); 
}

function addEventHandler(elementToAttachListener, typeOfEvent, eventFunction, preventBubbling)
{
        if(elementToAttachListener.addEventListener) 
        { 
                //you are using a w3c DOM compliant browser
                elementToAttachListener.addEventListener(typeOfEvent, eventFunction , preventBubbling); //capture event ie prevent bubbling: T/F
        }
        else if(elementToAttachListener.attachEvent) 
        {
                //you are using IE      
                elementToAttachListener.attachEvent("on"+typeOfEvent, eventFunction );
        }      
}

addEventHandler(window, "load", function(e) { doAddKeyListener(e); }, false); 
addEventHandler(window, "load", function(e) { doLoad(e); }, false ); 

