/*
jQuery.imageMenu
Basé sur phatfusion image Menu. pour mootools (http://www.phatfusion.net/imagemenu/index.htm);
*/
(function($) {
		  
jQuery.fn.ImageMenu = function(options) {
	var options = $.extend({
		'menu' : $(this),
		'items': 'li',
		'extendBy': 50,
		'init' : -1,
		'speed':'fast',
		'saveOnClick' : false,
		'click' : function(){}
	}, options || {});
	
	// Build Animated menu
	var menu = $(this);
	var elems = $(options.items,menu);

	// apply standard action
	elems.bind('click',options, ImageMenu.click);

	menu.attr('ImageMenu_Default', options.init);
	menu.css('position','relative');
	menu.append('<div style="position:absolute;height:'+menu.height()+'px;width:'+(menu.width()*2)+'px;clip: rect(0px '+menu.width()+'px '+menu.height()+'px 0px);" class="imageMenuContainer"></div>');
	elems.appendTo($('.imageMenuContainer',menu));
	
	elems.eq(elems.length-1).width(menu.width());

	if (options.init>=0)
		elems.eq(options.init).trigger('click');
};

})(jQuery);

var ImageMenu = {
	click : function(e){
		var options = e.data;

		var menu = $(options.menu);
		var elems = $(options.items,menu);
		
		var menuWidth = menu.width();
		var singleWidth = Math.floor(menuWidth/(elems.length));

		var outWidth = Math.floor((menuWidth-(singleWidth+options.extendBy))/(elems.length-1));
		var hoverWidth = Math.ceil(menuWidth - outWidth * (elems.length-1));
		
		$(this).removeClass('out');

		$(this).stop();
		$(this).animate({'width':hoverWidth},options.speed);
		
		elems.slice(0,elems.length).not(this).stop();
		elems.slice(0,elems.length).not(this).animate({'width':outWidth},options.speed);
		
		// extend with custom user function
		options.click(this, options);
	}
}
