// JavaScript Document

/*$("link:first").attr("href","css/global_js.css");*/

jQuery.event.add(window, "resize", resizeFrame);

var timer_1 = 0; /* Utilisé pour le setTimeout */

// centrage d'un élément sur l'axe horizontal et par rapport à l'écran
// [objet] = l'objet jquery à positionner
// [decalage] = (optionnel) decalage de l'élément par rapp au centre
function centrer_horizontal(objet, decalage) {
	var w_objet = objet.width();
	var position_h = (width_win/2) - (w_objet/2);
	
	if(typeof decalage != 'undefined') // 
		position_h = position_h + decalage;
	
	objet.css('left',position_h);
}

// centrage d'un élément sur l'axe vertical et par rapport à l'écran
// [objet] = l'objet jquery à positionner
// [hauteur_statique] = (optionnel) hauteur statique de l'élément, utiliser au cas ou le script n'arrive pas à determiner sa hauteur
function centrer_vertical(objet,hauteur_statique) {
	var h_objet = objet.height();
	
	if(typeof hauteur_statique != 'undefined') // si hauteur_statique est défini
		h_objet = hauteur_statique;
		
	objet.css('margin-top',(height_win/2) - (h_objet/2));
}

// redimensionnage d'un élément sur l'axe vertical et par rapport à l'écran et à son contenu
// [objet] = l'objet jquery à positionner
// [hauteur_statique] = (optionnel) hauteur statique de l'élément, utiliser au cas ou le script n'arrive pas à determiner sa hauteur
function resize_vertical(objet,hauteur_statique) {
	var h_objet = objet.height();
	//var h_page_contenu = parseInt($("#footer").css('top').slice(0,-2)) + $("#footer").outerHeight() ;
	//var h_page_contenu = 730;
	var h_page_contenu = jQuery(document).height();
	var hauteur_cible = h_page_contenu;
	
	// si la page est plus grande que le contenu, alors height = 100%
	// sinon  height = heuteur du contenu ed la page
	// mais en fait a aucun moment c'est égal à la hauteur de la fenetre
	
	if(height_win > h_page_contenu) {
		hauteur_cible = height_win;
	}
	
	/*
	objet.animate({ 
        height:hauteur_cible
    }, 500);*/
	objet.css('height',hauteur_cible);
}

function resize_bottom(objet) {
	var h_objet = objet.height();
	//var h_page_contenu = 730; // il est presque impossible de calculter la hauteur de chaque page, donc on la fixe à 800px;
	var h_page_contenu = jQuery(document).height();
	//var hauteur_footer = h_objet;
	
	//if(height_win > h_page_contenu) {
		//hauteur_cible = height_win;
		//difference = $("#footer").outerHeight()
		paddingBottom_footer = parseInt(objet.css('padding-bottom').slice(0,-2)) + (height_win - h_page_contenu);
		objet.css('padding-bottom',paddingBottom_footer);
	//}
}

/*function position_bottom() {
	
}*/
/*
function close_menu() {
	$("#left_menu").toggle('slide', function() {
											 $("#barre_menu_left").stop().toggle('slide');
											 $("#lightbox").stop().toggle('fade');
											 });

	//$("#header").show('drop',{direction: 'up' },1000);
}

function open_menu() {
	$("#lightbox").stop().toggle('fade');
	$("#left_menu").toggle('slide');
	$("#barre_menu_left").stop().toggle('slide');
	
	//$("#header").show('drop',{direction: 'up' },1000);
}
*/
function close_menu() {
	//$("#lightbox").toggle('fade');
	//$("#lightbox").hide('fade',800); opacity: 0.25,
	//clearTimeout(timer_1);
	
	$("#lightbox").stop().animate({ 
        opacity:0
    }, 500 , function() {
		$("#lightbox").css('display','none');	
	});
	
	$("#left_menu").stop().animate({ 
        left:'-240px'
    }, 800);
	
	$("#barre_menu_left").stop().animate({ 
        left:0
    }, 1300);
}

function open_menu() {
	//$("#lightbox").toggle('fade');
	//$("#lightbox").show('fade',800);
	//clearTimeout(timer_1);
	
	$("#lightbox").css('display','block');
	$("#lightbox").stop().animate({ 
        opacity:0.8
    }, 800);
	
	$("#barre_menu_left").stop().animate({ 
        left:'-99px'
    }, 300);
	
	$("#left_menu").stop().animate({ 
        left:0
    }, 800, function () {
		//timer_footer_1 = setTimeout("close_menu()",4000); /* Se replie au bout de 4sec si le on mouse move ne se declenche pas */;
		/*$(this).mousemove(
			function () {
				reste_deplie();
			}
		);*/
		$("#lightbox").mousemove(
			function () {
				$("#lightbox").unbind('mousemove');
				close_menu();
			}
		);
		
		$(this).mouseleave(
			function () {
				//reste_deplie();
				$("#lightbox").unbind('mousemove');
				close_menu();
			}
		);
		
	});
}

function reste_deplie() {
	clearTimeout(timer_1);
	timer_1 = setTimeout("close_menu()",5000);
}

function init_left_menu() {
	
	if ($("#colonne_accueil").length) // si la balise existe
		$("#colonne_accueil").css('margin-left',-500); // on décale (pour la page d'accueil)
	
	$('#left_menu UL').append('<a href="#" id="btn_menu_fermer"><img src="images/btn_menu_close.gif" alt="fermer le menu" /></a>');
	$('#left_menu').after('<div id="barre_menu_left"><a href="#" id="btn_menu_ouvrir"><img src="images/btn_menu_open.png" alt="ouvir le menu" /></a></div>');
	//$("#left_menu").toggle('slide');
	$("#left_menu").css('left',-240)
	
	//close_menu();
	
	/*$("A#btn_menu_fermer").hover(function(event){
		close_menu();		
	});*/
	
	$("#barre_menu_left").mouseenter(function(event){
		open_menu();		
	});
	/*
	$("#barre_menu_left").hover(
		function(){
			open_menu();
		},
		function() {
			close_menu();
		}
	)*/
}


/* general */
function init_frame() {
	height_win = $(window).height();
	width_win = $(window).width();
	
	resizeFrame();
	windowReady_local();
	
}

function resizeFrame() 
{
	height_win = $(window).height();
	width_win = $(window).width() - 20;
		
	//resizeFrame_local();
	resize_vertical($(".colonne_blanche"));
	resize_vertical($("#left_menu"));
	//resize_bottom($("#footer"));
}

$(document).ready(function(){
	//$("#conteneur").css('visibility','hidden');
	setTimeout("init_frame()",300);
	
	init_left_menu();
});

