// Garrett Murphey
// http://gmurphey.com/
// Distributed under the Creative Commons Attribution-Sharealike License
// http://creativecommons.org/licenses/by-sa/2.5/
function distribute(container, elements, direction, className) {
	
	var containerDimen = Element.getDimensions(container);
	var element = $A($(container).getElementsByTagName(elements));
	
	if (direction == 'vertical') {
		var containerHeight = containerDimen.height;
		containerHeight -= (parseInt(Element.getStyle(container, 'padding-top')) + parseInt(Element.getStyle(container, 'padding-bottom')));
	} else {
		var containerWidth = 1000;
		containerWidth -= (parseInt(Element.getStyle(container, 'padding-left')) + parseInt(Element.getStyle(container, 'padding-right')));		
	}
	
	
	var i = 0;
	
	element.each(function (e) 
	{
		if ((className == null) || ((className != null) && (Element.hasClassName(e, className)))) {
			i++;
			//var elemDimen = Element.getDimensions(e);
			/*if (direction == 'vertical') {
				//elementHeight += elemDimen.height;
				Element.setStyle(e, { marginTop: 0, marginBottom: 0 });
			} else {
				//elementWidth = elemDimen.width;
				Element.setStyle(e, { marginLeft: 0, marginRight: 0 });
			}*/
		}
	});
	
	var elementWidth = (containerWidth/i);
	var elementHeight = containerHeight/i;
	
	if (direction == 'vertical')
		var leftover = containerHeight - elementHeight;
	else
		var leftover = containerWidth - elementWidth;
	
	var marginNum = i - 1;
	var margin = Math.floor(leftover / marginNum);
	
	element.each(function (e)
	{
		/*if ((className == null) || ((className != null) && (Element.hasClassName(e, className)))) 
		{*/
			if (direction == 'vertical')
			{
				if (e != element[element.length - 1])
					Element.setStyle(e, {marginBottom: margin + 'px'});
			}
			else
			{
				//if (e != element[element.length - 1])
					Element.setStyle(e, {width: elementWidth + 'px'});
			}
		//}
	});
	
}