var MenuHorizontal = function (obj_menu, obj_next, obj_back)
{
	// Super tableau pour le slice
	var menu = {
		jq	 	: {
			id 		: obj_menu,
			width	: obj_menu.width(),
			total	: obj_menu.find('li').length
		},
		boutons	: {
			next_btn : obj_next,
			back_btn : obj_back
		},
		pages 	: Array()
	};
	
	// Variables temporaires
	var width_page 	= 0;
	var iteration	= 0;
	var start_page	= 0;
	var cur_page 	= 0;
	var end_page	= 0;
	
	menu.jq.id.find('li').each(function(i)
	{
		width_page += $(this).width();
		end_page++;
		
		if( width_page > menu.jq.width )
		{
			iteration++;
			start_page = i;
			width_page = $(this).width();
		}
		
		if( $(this).is('.actif') ) cur_page = iteration;
		
		menu.pages[iteration] = { start : start_page , end : end_page, width : width_page };						
	});
	
	var total_page = menu.pages.length;
	
	function effects()
	{
		if( cur_page < (total_page - 1)  ) menu.boutons.next_btn.css({opacity:1});
		if( cur_page == (total_page-1) ) menu.boutons.next_btn.css({opacity:0.1});
		if( cur_page > 0 && cur_page <= (total_page-1) ) menu.boutons.back_btn.css({opacity:1});
		if( cur_page == 0 ) menu.boutons.back_btn.css({opacity:0.1});
	}
	
	if( menu.pages[cur_page] )
	{
		menu.jq.id.find('li').hide();
		menu.jq.id.find('li').slice(menu.pages[cur_page].start,menu.pages[cur_page].end).show();
	}
	effects();	
	
	// Bouton Suivant
	menu.boutons.next_btn.bind('click',
	function(e){
		if( cur_page < total_page-1 )
		{
			cur_page+=1;
			menu.jq.id.find('li').hide();
			menu.jq.id.find('li').slice(menu.pages[cur_page].start,menu.pages[cur_page].end).show();
			effects();
		}
		e.preventDefault();
	});
	
	// Bouton Précédent
	menu.boutons.back_btn.bind('click',
	function(e){
		if( cur_page > 0 )
		{
			menu.jq.id.find('li').hide();
			menu.jq.id.find('li').slice(menu.pages[cur_page-1].start,menu.pages[cur_page-1].end).show();
			cur_page-=1;
			effects();
		}
		e.preventDefault();
	});

}

$(function(){
	MenuHorizontal( $('#content_menu_js') , $('#header_menu_next') , $('#header_menu_back') );
	MenuHorizontal( $('#cmc_menu') , $('#cmc_next') , $('#cmc_back') );
});