// JavaScript MAIN MENU class
var CarouselMenu = {
	EltSizes 	: [50,100,150,100,50],
	EltPosTop  	: [50,75,100,75,50],
	EltPosLeft 	: [125,200,375,600,725],
	EltOpacity 	: [0.3,0.65,1,0.65,0.3],
	ifFocused	: false,
	imgOri		: '',
	
	//---- Initialisation du menu
	init : function(){
		/* Internet Explorer */
		if ( $.browser.msie==true ){
			this.EltPosLeft = [85,160,335,560,685];
			this.EltPosTop = [60,85,110,85,60]
		}
		for (i=0; i<5; i++){
			$('#MAIN_MENU #ELT0'+(i+1)).css({
				'width':CarouselMenu.EltSizes[i]+'px',
				'height':CarouselMenu.EltSizes[i]+'px',
				'top':CarouselMenu.EltPosTop[i]+'px',
				'left':CarouselMenu.EltPosLeft[i]+'px',
				'opacity':CarouselMenu.EltOpacity[i]
			});
		}
		$('#MAIN_MENU #TITLE').html($('#MAIN_MENU #ELT03').attr('title'));
		var SelectedButton = Global.getCookie('CarouselMenu');
		if ( SelectedButton!='' && SelectedButton!=null ) 
			window.setTimeout( function() { CarouselMenu.moveToPosition(SelectedButton) },250);
	},
	//---- Mouvement du menu vers la gauche
	turnLeft : function(){
		var Title = '';
		var Elts = new Array;
		var centerPos;
		$('#MAIN_MENU li.button').each( function(){
			var EltPos = $(this).position();
			Elts[Global.array_search(EltPos.left, CarouselMenu.EltPosLeft)] = $(this).attr('id');
		});
		for ( i=0; i<Elts.length; i++ ){
			var NewPos = i==0 ? 4 : i-1;
			var Elt = $('#'+Elts[i]);
			Elt.animate({
				'width':CarouselMenu.EltSizes[NewPos]+'px',
				'height':CarouselMenu.EltSizes[NewPos]+'px',
				'top':CarouselMenu.EltPosTop[NewPos]+'px',
				'left':CarouselMenu.EltPosLeft[NewPos]+'px',
				'opacity':CarouselMenu.EltOpacity[NewPos]
			}, 300, 'linear');
			i==0 ? Elt.css('zIndex','1') : Elt.css('zIndex','2');
			if (NewPos==2){
				Title=Elt.attr('title');
				centerPos = Elt.attr('id').substr(4,1);
			}
		}
		$('#MAIN_MENU #TITLE').hide().html(Title).fadeIn('slow');
		Global.setCookie('CarouselMenu', centerPos);
		return centerPos;
	},
	//---- Mouvement du menu vers la droite
	turnRight : function(){
		var Title = '';
		var Elts = new Array;
		var centerPos;
		$('#MAIN_MENU li.button').each( function(){
			var EltPos = $(this).position();
			Elts[Global.array_search(EltPos.left, CarouselMenu.EltPosLeft)] = $(this).attr('id');
		});
		for ( i=0; i<Elts.length; i++ ){
			var NewPos = i==4 ? 0 : i+1;
			var Elt = $('#'+Elts[i]);
			Elt.animate({
				'width':CarouselMenu.EltSizes[NewPos]+'px',
				'height':CarouselMenu.EltSizes[NewPos]+'px',
				'top':CarouselMenu.EltPosTop[NewPos]+'px',
				'left':CarouselMenu.EltPosLeft[NewPos]+'px',
				'opacity':CarouselMenu.EltOpacity[NewPos]
			}, 300, 'linear');
			i==0 ? Elt.css('zIndex','1') : Elt.css('zIndex','2');
			if (NewPos==2){
				Title=Elt.attr('title');
				centerPos = Elt.attr('id').substr(4,1);
			}
		}
		$('#MAIN_MENU #TITLE').hide().html(Title).fadeIn('slow');
		Global.setCookie('CarouselMenu', centerPos);
		return centerPos;
	},
	//---- Vérifie la position
	isPosition : function(Elt, NumPosition){
		var myPos = $(Elt).position();
		if ( CarouselMenu.EltPosLeft[NumPosition-1] == myPos.left )
			return true;
		else
			return false;
	},	
	//---- Positionne le menu sélectionné
	moveToPosition : function(SelectedNumButton){
		var Elts = new Array;
		var centerPos;
		$('#MAIN_MENU li.button').each( function(){
			var EltPos = $(this).position();
			Elts[Global.array_search(EltPos.left, CarouselMenu.EltPosLeft)] = $(this).attr('id').substr(4,1);
		});
		if ( Global.array_search(SelectedNumButton, Elts)<2 ){
			centerPos = CarouselMenu.turnRight();
			centerPos!=SelectedNumButton ? window.setTimeout( " CarouselMenu.turnRight()", 300 ) : false;
		} else if ( Global.array_search(SelectedNumButton, Elts)>2 ){
			centerPos = CarouselMenu.turnLeft();
			centerPos!=SelectedNumButton ? window.setTimeout( " CarouselMenu.turnLeft()", 300 ) : false;
		}
	},
	//---- Ouverture d'un sous menu
	openSsMenu : function(IdButton){
		$('#ss_menu_'+IdButton).slideDown('fast');
		CarouselMenu.ifFocused = true;
	},
	//---- Fermeture d'un sous menu
	closeSsMenu : function(IdButton){
		window.setTimeout( function(){
			if ( !CarouselMenu.ifFocused )
				$('#ss_menu_'+IdButton).slideUp('fast');
		},150);
	},
	//---- Modification de l'image du bouton en fonction du sous-menu
	changeImg : function(IdButtonParent, newImg){
		CarouselMenu.imgOri = $('#bt_img_elt' + IdButtonParent).attr('src');
		$('#bt_img_elt' + IdButtonParent).attr('src', newImg);
	},
	//---- Rétabli l'image d'origine
	reloadImg : function(IdButtonParent){
		$('#bt_img_elt' + IdButtonParent).attr('src', CarouselMenu.imgOri);
	},
	//------------------------------------------------------------------//
	// ADMINISTRATION													//
	//------------------------------------------------------------------//
	saveMenu : function(){
		$.ajax({
			type: 'post',
			url: '../modules/homeCarousel/admin.php',
			data: {
				action: 'saveMenu',
				id_module: $('#carousel_menu').val()
			},
			success: function(msg){
				messagebox('Le menu a été enregistré')
			}
		});
	}
}
