//** Dynamic Drive Equal Columns Height script v1.01 (Nov 2nd, 06)
//** http://www.dynamicdrive.com/style/blog/entry/css-equal-columns-height-script/

var ClientHeight = 0
var offsetCorrection = 210
var ddequalcolumns=new Object()
//Input IDs (id attr) of columns to equalize. Script will check if each corresponding column actually exists:
ddequalcolumns.columnswatch=["sidebar-left", "sidebar-right", "content"]

ddequalcolumns.setHeights=function(reset){
    this.getBrowserHeight()
    var tallest=0
    var resetit=(typeof reset=="string")? true : false
    for (var i=0; i<this.columnswatch.length; i++){
        if (document.getElementById(this.columnswatch[i])!=null){
            if (resetit)
                document.getElementById(this.columnswatch[i]).style.height="auto"
            if (document.getElementById(this.columnswatch[i]).offsetHeight>tallest)
                tallest=document.getElementById(this.columnswatch[i]).offsetHeight
        }
    }
    if (tallest>0){
        if ( tallest < ClientHeight - offsetCorrection) tallest = ClientHeight - offsetCorrection
        for (var i=0; i<this.columnswatch.length; i++){
            if (document.getElementById(this.columnswatch[i])!=null)
                document.getElementById(this.columnswatch[i]).style.height=tallest+"px"
        }
    }
}

ddequalcolumns.resetHeights=function(){
    this.setHeights("reset")
}

ddequalcolumns.dotask=function(target, functionref, tasktype){ //assign a function to execute to an event handler (ie: onunload)
    var tasktype=(window.addEventListener)? tasktype : "on"+tasktype
    if (target.addEventListener)
        target.addEventListener(tasktype, functionref, false)
    else if (target.attachEvent)
        target.attachEvent(tasktype, functionref)
}

ddequalcolumns.dotask(window, function(){ddequalcolumns.setHeights()}, "load")
// ddequalcolumns.dotask(window, function(){if (typeof ddequalcolumns.timer!="undefined") clearTimeout(ddequalcolumns.timer); ddequalcolumns.timer=setTimeout("ddequalcolumns.resetHeights()", 200)}, "resize")

ddequalcolumns.getBrowserHeight=function() {
	var y
	if (self.innerHeight) // all except Explorer
	{
		y = self.innerHeight
		//alert('all except Explorer '+y);
	 }
	else if (document.documentElement && document.documentElement.clientHeight)
		// Explorer 6 + 7 Strict Mode
	{
		y = document.documentElement.clientHeight
		//alert('IE6 Strict '+y);
	 }
	else if (document.body) // other Explorers
	{
		y = document.body.clientHeight
		//alert('other Explorers '+y);
	}
    ClientHeight = y
}
