$(function(){

	var expanded = false;

	$(document).click(function(){
		
		if(expanded) {
			expanded = false;
			return;
		}
		$('.expanded, .hidden')
			.removeClass('hidden')
			.removeClass('expanded')
		expanded = false;
	})
	
	$('div.box a').click(function(event){
	
		event.preventDefault();
		window.open($(this).attr('href'));
	})

	var boxes = $('div.box img');	
	
	if(boxes.length > 0) {
		boxes.mouseup(function(event){

			var box = $(this).parents('div.box').first();
	
			if(box.find('p.description').length < 1) {
				return;
			}
			
			expanded = !box.hasClass('expanded');

			$('.expanded, .hidden')
				.removeClass('hidden')
				.removeClass('expanded')

			var box_width = box.outerWidth(true);
			var box_left_edge = box.position().left;
			var box_right_edge = box.position().left + box_width;
			var box_left_edge2 = box_left_edge - box_width;
			var box_right_edge2 = box_right_edge + box_width;
			var screen_width = $(window).width();
			var support_box = screen_width > box_right_edge2 || box_left_edge2 < 50 ? box.next('div.box') : box.prev('div.box');

			support_box.addClass('hidden');
			box.addClass('expanded')
		});
	}
})
