/*
addEvent function from http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html
*/
function addEvent(obj, type, fn)
{
	if (obj.addEventListener)
		obj.addEventListener(type, fn, false);
	else if (obj.attachEvent)
	{
		obj["e" + type + fn] = fn;
		obj[type + fn] = function()
		{
			obj["e" + type + fn] (window.event);
		}
		
		obj.attachEvent("on" + type, obj[type + fn]);
	}
}

function removeEvent(obj, type, fn)
{
	if (obj.removeEventListener)
		obj.removeEventListener(type, fn, false);
	else if (obj.detachEvent)
	{
		obj.detachEvent("on" + type, obj[type + fn]);
		obj[type + fn] = null;
		obj["e" + type + fn] = null;
	}
}

/*
Create the new window
*/
function openInNewWindow()
{
	// Change "_blank" to something like "newWindow" to load all links in the same new window
    var newWindow = window.open(this.getAttribute('href'), '_blank');
    newWindow.focus();
	
    return false;
}

/*
Add the openInNewWindow function to the onclick event of links with a class name of "new-window"
*/

var data;

function getNewWindowLinks()
{
	// Check that the browser is DOM compliant
	if (document.getElementById && document.createElement && document.appendChild)
	{
		// Change this to the text you want to use to alert the user that a new window will be opened
		//var strNewWindowAlert = './images/new_window.png';
		var strNewWindowAlert = '';
		// Find all links
		var links = document.getElementsByTagName('a');
		var objWarningText;
		var strWarningText;
		var link;
		
		for (var i = 0; i < links.length; i++)
		{
			link = links[i];
			// Find all links with a class name of "new-window"
			if (/\bnew\-window\b/.exec(link.className))
			{
				// Create an em element containing the new window warning text and insert it after the link text
				objWarningText = document.createElement("em");
				strWarningText = document.createTextNode(strNewWindowAlert);
				objWarningText.appendChild(strWarningText);
				
				// Create an image element containing the new window warning image and insert it after the link text
				//objWarningText = document.createElement("img");
				//objWarningText.src = strNewWindowAlert;
				
				link.appendChild(objWarningText);
				link.onclick = openInNewWindow;
			}
			else if (/\bpopup_\d+x\d+\b/.exec(link.className))
			{
				data = link.className.split(/[_x]+/g);
				
				link.onclick = function()
				{
					var left = parseInt((document.documentElement.clientWidth - data[1]) / 2);
					var top = parseInt((document.documentElement.clientHeight - data[2]) / 2);
					
					var newWindow = window.open(this.getAttribute('href'), '_blank', 'location=no,toolbar=no,menubar=no,resizeable=no,directories=no,status=no,scrollbars=no,width=' + data[1] + ',height=' + data[2] + ',left=' + left + ',top=' + top);
					newWindow.focus();
					
					return false;
				}
			}
		}
		
		objWarningText = null;
	}
}

addEvent(window, 'load', getNewWindowLinks);
