function equalHeights(){

	/* set all column heights to be equal. there are a few different cases, so we must check for each */
	var largest = 0;
	
	/*	*****************************
		LEFT COLUMN 
		*****************************	*/	
	if (document.getElementById("column-left") != null){
		var columnLeft = document.getElementById('column-left');
		columnLeftoffsetHeight = columnLeft.offsetHeight;			
		columnLeftoffsetPadding = getPixels(getStyle("column-left","padding-bottom", "paddingBottom"));		
		columnLeftoffsetPadding += getPixels(getStyle("column-left","padding-top", "paddingTop"));
		columnLeftoffsetPadding += getPixels(getStyle("column-left","margin-bottom", "marginBottom"));
		columnLeftoffsetPadding += getPixels(getStyle("column-left","margin-top", "marginTop"));
	}
			
	/*	*****************************
		CENTER COLUMN 
		*****************************	*/	
	if (document.getElementById("column-center") != null){
		var columnCenter = document.getElementById('column-center');
		columnCenteroffsetHeight = columnCenter.offsetHeight;
		columnCenteroffsetPadding = getPixels(getStyle("column-center","padding-bottom", "paddingBottom"));
		columnCenteroffsetPadding += getPixels(getStyle("column-center","padding-top", "paddingTop"));
		columnCenteroffsetPadding += getPixels(getStyle("column-center","margin-bottom", "marginBottom"));
		columnCenteroffsetPadding += getPixels(getStyle("column-center","margin-top", "marginTop"));
	}	
	
	/*	*****************************
		RIGHT COLUMN 
		*****************************	*/	
	if (document.getElementById("column-right-small") != null){
		var columnRightSmall = document.getElementById('column-right-small');
		columnRightSmalloffsetHeight = columnRightSmall.offsetHeight;
		columnRightSmalloffsetPadding = getPixels(getStyle("column-right-small","padding-bottom", "paddingBottom"));
		columnRightSmalloffsetPadding += getPixels(getStyle("column-right-small","padding-top", "paddingTop"));
		columnRightSmalloffsetPadding += getPixels(getStyle("column-right-small","margin-bottom", "marginBottom"));
		columnRightSmalloffsetPadding += getPixels(getStyle("column-right-small","margin-top", "marginTop"));
	}	
	
	if (document.getElementById("column-right-large") != null){
		var columnRightLarge = document.getElementById('column-right-large');
		columnRightLargeoffsetHeight = columnRightLarge.offsetHeight;
		columnRightLargeoffsetPadding = getPixels(getStyle("column-right-large","padding-bottom", "paddingBottom"));
		columnRightLargeoffsetPadding += getPixels(getStyle("column-right-large","padding-top", "paddingTop"));
		columnRightLargeoffsetPadding += getPixels(getStyle("column-right-large","margin-bottom", "marginBottom"));
		columnRightLargeoffsetPadding += getPixels(getStyle("column-right-large","margin-top", "marginTop"));
	}		

	/* set heights */
	if (columnLeft != null){	
		
		if (columnCenter != null){
			
			if (columnRightSmall != null){
			
				if (columnRightLarge != null){
					var heights = new Array(columnLeftoffsetHeight, columnCenteroffsetHeight, columnRightSmalloffsetHeight+columnRightLargeoffsetHeight);
					largest = getLargestHeight(heights);
					columnLeft.style.height = (largest-columnLeftoffsetPadding)+"px";
					columnCenter.style.height = (largest-columnCenteroffsetPadding)+"px";	
					columnRightLarge.style.height = (largest-columnRightLargeoffsetPadding-columnRightSmalloffsetHeight-columnRightSmalloffsetPadding+9)+"px";					
				}
				else{
					var heights = new Array(columnLeftoffsetHeight, columnCenteroffsetHeight, columnRightSmall);
					largest = getLargestHeight(heights);
					columnLeft.style.height = (largest-columnLeftoffsetPadding)+"px";
					columnCenter.style.height = (largest-columnCenteroffsetPadding)+"px";	
					columnRightSmall.style.height = (largest-columnRightSmalloffsetPadding+9)+"px";					
				}
			
			}
			
			else{
				
				if (columnRightLarge != null){				
					var heights = new Array(columnLeftoffsetHeight, columnCenteroffsetHeight, columnRightLargeoffsetHeight);
					largest = getLargestHeight(heights);
					columnLeft.style.height = (largest-columnLeftoffsetPadding)+"px";
					columnCenter.style.height = (largest-columnCenteroffsetPadding)+"px";	
					columnRightLarge.style.height = (largest-columnRightLargeoffsetPadding)+"px";										
				}
				else{
					var heights = new Array(columnLeftoffsetHeight, columnCenteroffsetHeight);
					largest = getLargestHeight(heights);
					columnLeft.style.height = (largest-columnLeftoffsetPadding)+"px";
					columnCenter.style.height = (largest-columnCenteroffsetPadding)+"px";					
				}
			}
			
		}
	
	}
	
	else{
		
		if (columnCenter != null){
			
			if (columnRightLarge != null){		
				
				if (columnRightSmall != null){
					var heights = new Array(columnCenteroffsetHeight, columnRightSmalloffsetHeight+columnRightLargeoffsetHeight);
					largest = getLargestHeight(heights);
					columnCenter.style.height = (largest-columnCenteroffsetPadding)+"px";	
					columnRightLarge.style.height = (largest-columnRightLargeoffsetPadding-columnRightSmalloffsetHeight-columnRightSmalloffsetPadding+9)+"px";	
				}
				else{
					var heights = new Array(columnCenteroffsetHeight, columnRightLargeoffsetHeight);
					largest = getLargestHeight(heights);
					columnCenter.style.height = (largest-columnCenteroffsetPadding)+"px";	
					columnRightLarge.style.height = (largest-columnRightLargeoffsetPadding)+"px";										
				}
			}			
			
		}
		
	}

}

function getLargestHeight(heights){
	var largest = 0;
	for(x = 0; x<heights.length; x++){
		if (heights[x] > largest){
			largest = heights[x];
		}
	}
	
	return largest+32;
}

function getStyle(el,styleProp,styleProp2){
	var x = document.getElementById(el);
	if (x.currentStyle){
		var y = x.currentStyle[styleProp];
		if (y == null){
			y = x.currentStyle[styleProp2];	
		}
	}
	else if (window.getComputedStyle){	
		var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
		if (y == null){
			y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp2);
		}
	}
	return y;
}

function getPixels(pixelstr){
	return parseInt(pixelstr.substr(0,pixelstr.length-2));
}