function highlight(blockID, col){
	if (!document.getElementById){ return false; }
	var element = document.getElementById(blockID);
	element.style.backgroundColor = col;
}

function fadeBG(blockID, col){
	if (!document.getElementById){ return false;}
	var element = document.getElementById(blockID);
	var currentCol = element.style.backgroundColor;
	var sourceArray = new Array();
	var destArray = new Array();

	destArray[0] = parseInt(col.substring(1,3), 16);
	destArray[1] = parseInt(col.substring(3,5), 16);
	destArray[2] = parseInt(col.substring(5,7), 16);

	if (currentCol.indexOf('#')>-1){
		//IE
		sourceArray[0] = parseInt(currentCol.substring(1,3), 16);
		sourceArray[1] = parseInt(currentCol.substring(3,5), 16);
		sourceArray[2] = parseInt(currentCol.substring(5,7), 16);
	} else if (currentCol.indexOf('rgb')>-1){
		//FF
		var colString = currentCol.substring(4,currentCol.length-1);
		sourceArray = colString.split(",");
		sourceArray[0] = parseInt(sourceArray[0]);
		sourceArray[1] = parseInt(sourceArray[1]);
		sourceArray[2] = parseInt(sourceArray[2]);
	}
	
		for ( i=0; i< 3; i++) {
			if (sourceArray[i] < destArray[i] - 5){
				sourceArray[i] = sourceArray[i] + Math.round((Math.abs(destArray[i] - sourceArray[i])/8));
			} else {
				if (sourceArray[i] > destArray[i] + 5){
					sourceArray[i] = sourceArray[i] - Math.round((Math.abs(destArray[i] - sourceArray[i])/8));
				} else {
					sourceArray[i] = destArray[i];
				}
			}
		}

	element.style.backgroundColor = "rgb("+sourceArray[0]+", "+sourceArray[1]+", "+sourceArray[2]+")";
	
	if (sourceArray[0] != destArray[0] || sourceArray[1] != destArray[1] || sourceArray[2] != destArray[2]){
		window.setTimeout("fadeBG('"+blockID+"', '"+col+"')", 20);
	}
	
}

function fadeAfter(blockID, col, time){
	window.setTimeout("fadeBG('"+blockID+"', '"+col+"')", time);
}