/* from http://www.thewatchmakerproject.com/journal/308/equal-height-boxes-with-javascript */

var BoxHeights = {
	maxh: 0,
	boxes: Array(),
	num: 0,
	equalise: function() {
		this.num = arguments.length;
		for (var i=0;i<this.num;i++) if (!this.$(arguments[i])) return;
		this.boxes = arguments;
		this.maxheight();
		for (var i=0;i<this.num;i++) this.$(arguments[i]).style.height = this.maxh+"px";
	},
	maxheight: function() {
		var heights = new Array();
		for (var i=0;i<this.num;i++) {
			if (navigator.userAgent.toLowerCase().indexOf('opera') == -1) {
				heights.push(this.$(this.boxes[i]).scrollHeight);
			} else {
				heights.push(this.$(this.boxes[i]).offsetHeight);
			}
		}
		heights.sort(this.sortNumeric);
		this.maxh = heights[this.num-1];
	},
	sortNumeric: function(f,s) {
		return f-s;
	},
	$: function() {
		var elements = new Array();
		for (var i=0;i<arguments.length;i++) {
			var element = arguments[i];
			if (typeof element == 'string') element = document.getElementById(element);
			if (arguments.length == 1) return element;
			elements.push(element);
		}
		return elements;
	}
}

function do_box_height() {
	var boxes = [];
	var divs = document.getElementById("content").getElementsByTagName("div");
	for(var i=0; i<divs.length; i++) if(divs[i].className == "box") boxes.push(divs[i]);
	for(var i=0; i<boxes.length; i=i+3) BoxHeights.equalise(boxes[i], boxes[i+1], boxes[i+2]);
}