function addEvent(elm, evType, fn, useCapture)
{
	if(elm.addEventListener)		// this listener is for firefox/mozilla browsers/gecko browsers
	{
		elm.addEventListener(evType, fn, useCapture);
	}
	else if(elm.attachEvent)		// this listener is for IE 
	{
		elm.attachEvent('on' + evType, fn);
	}
	else
	{
		elm['on' + evType]=fn;		//this listener is for IE 5.5 and other browsers.
	}
}

addEvent(window, 'load', hideRows, false);
addEvent(document,'click', showSource,false);

function showHistory(el, cname)
{
	var tRows=document.getElementsByTagName("tr");
	
	if(el.className==cname)
	{
		el.style.display='none';
	}
	
		
	for(var i=0;i<tRows.length;i++)
	{
		
		if(tRows[i].className==cname)
		{
			tRows[i].style.display='block';
		}
		else if((tRows[i].className!=cname) && (tRows[i].className.indexOf('History')!=-1))
		{
			tRows[i].style.display='none';
		}
		
		if(tRows[i].className=='Current')
		{
			tRows[i].style.display='block';
		}

	}
	
}
function showCurrent(targ)
{
	var tRows=document.getElementsByTagName("a");
	
	for(var i=0;i<tRows.length;i++)
	{
		if(tRows[i].className.indexOf('History')!=-1)
		{
			tRows[i].style.display='block';
	  
		}
	}
	
	hideRows();
}


function hideRows()
{
	tRows=new Array();
	var tRows=document.getElementsByTagName("tr");
	
	for(var i=0;i<tRows.length;i++)
	{
		if(tRows[i].className.indexOf('History')!=-1)
		{
			tRows[i].style.display='none';
		}
	}
	
	var current=document.getElementById('Current');
	
	current.style.display='none';
}

function showSource(e)
{
	var targ;
	
	var current=document.getElementById('Current');
	
	if(window.event && window.event.srcElement)
	{
		targ=window.event.srcElement;
	}
	else
	{
		if(e)
		{
			targ=e.target;
		}
	}

	 if((targ.tagName.toLowerCase()=='a') && (targ.className.indexOf('History')!=-1))
	 {
		showHistory(targ,targ.className);
		current.style.display='block';
	 }
	 else if((targ.tagName.toLowerCase()=='a') && (targ.id.indexOf('Current')!=-1))
	 {
		 showCurrent(targ);
	 }
	 else
	 {
		return; 
	 }
 
}
