var MIN_COLS = 3;
var COL_WIDTH = 200;
var GAP = 0; 

var offx, offy = 0;
maxy = new Array();

$(function() { 
	offy = 0;
	offx = 0;
	arrange(); 
});


arrange();

function arrange() {
	var columns = 4;
	$('.eachpost').css('width',COL_WIDTH  + 'px');
	$('.twocols').css('width', COL_WIDTH*2 + GAP  );
	$('.threecols').css('width', COL_WIDTH*3 + GAP*2);

	for (x=0; x < columns; x++) {
		maxy[x] = 0;
	}
	$('.eachpost').each(function(i) {

		var pos, cursor, w , altura= 0;

		w = (Math.floor($(this).outerWidth() / COL_WIDTH));
		cursor = 0;

		if (w>1) {
			for (x=0; x < columns-(w-1); x++) {
				cursor = maxy[x] < maxy[cursor] ? x : cursor;
			}
			pos = cursor;
			
			for (var x=0; x<w; x++) {
				altura = Math.max(altura, maxy[pos+x]);
			}
			for (var x=0; x<w; x++) 
				maxy[pos+x] = parseInt($(this).outerHeight()) + GAP + altura;
				
			$(this).css('left', pos*(COL_WIDTH+GAP) + offx).css('top',altura + offy);
		}
		else {
		
			for (x=0; x < columns; x++) {
				cursor = maxy[x] < maxy[cursor] ? x : cursor;
			}

			$(this).css('left', cursor*(COL_WIDTH+GAP) + offx).css('top',maxy[cursor] + offy);
			maxy[cursor] += $(this).outerHeight() + GAP;
		}
	});

	
}
