/*
	tableruler()
	written by Chris Heilmann for alistapart.
	enables a rollover of rows for each table with the classname "hlrows"
	
	tablehighlighter()
	written by Andy Johnston
	enables a rollover of cells by class name as id
*/

function tableruler(){
	if (document.getElementById && document.createTextNode)	{
		var tables=document.getElementsByTagName('table');
		for (var i=0;i<tables.length;i++)
		{
			if(tables[i].className=='ruler')
			{
				var trs=tables[i].getElementsByTagName('tr');
				for(var j=0;j<trs.length;j++)
				{
					if(trs[j].parentNode.nodeName=='TBODY')
					{
						trs[j].onmouseover=function(){this.className='ruled';return false}
						trs[j].onmouseout=function(){this.className='';return false}
					}
				}
			}
		}
	}
}

function tablehighlighter() {
	if (document.getElementById && document.createTextNode)	{
		var tables=document.getElementsByTagName('table');
		for (var i=0;i<tables.length;i++) {
			if(tables[i].className=='highlighter') {
				var trs=tables[i].getElementsByTagName('tr');
				for(var j=0;j<trs.length;j++) {
					if(trs[j].parentNode.nodeName=='TBODY')	{
						var tds=trs[j].getElementsByTagName('td');
						for(var d=0;d<tds.length;d++) {								
							tds[d].onmouseover=doHighlight;
							tds[d].onmouseout=doNolight;
						}
					}
				}
			}
		}
	}
}
function doHighlight(){
	var targetClass = this.className;
	lastTarget = targetClass;
	var tds=document.getElementsByTagName('td');
	for(var d=0;d<tds.length;d++) {				
		if(tds[d].className==targetClass){
			tds[d].className = 'ruled'
		}
	}
}
function doNolight(){
	var targetClass = this.className;
	var tds=document.getElementsByTagName('td');
	for(var d=0;d<tds.length;d++) {							
		if(tds[d].className==targetClass){
			tds[d].className = lastTarget;
		}
	}
}

function tablehighlighter2() {	
	if (document.getElementById && document.createTextNode)	{
		var tables=document.getElementsByTagName('table');
		for (var i=0;i<tables.length;i++) {
			if(tables[i].className=='highlighter'+(i+1)) {
				tables[i].onmouseover=doHighlight2;
				tables[i].onmouseout=doNolight2;
			}
		}
	}
}
function doHighlight2(){
	var targetClass = this.className;
	var tds=document.getElementsByTagName('td');
	for(var d=0;d<tds.length;d++) {			
		var currentParentClass = tds[d].parentNode.parentNode.parentNode.className;
		if(currentParentClass==targetClass){
			tds[d].className = 'ruled'
		}
	}
}
function doNolight2(){
	var targetClass = this.className;
	var tds=document.getElementsByTagName('td');
	for(var d=0;d<tds.length;d++) {							
		var currentParentClass = tds[d].parentNode.parentNode.parentNode.className;
		if(currentParentClass==targetClass){
			tds[d].className = '';
		}
	}
}