/*              
 __   ____ _ _ __ ___ 
 \ \ / / _` | '__/ __|
  \ V / (_| | |  \__ \
   \_/ \__,_|_|  |___/
                      
 */
var new_height = 0;
var hauteur_reference = 0;
var min = 680;
var hash = '';
var cible = '';
var ssmenu_test = '';
var current_ssmenu = false;
var ext_file = '.php';
var header_en_cours = false;
var dossier_pages = 'pages/';
var page_accueil = 'news';
var dossier_en_cours = '';
var tab_menu = new Array(
		'news',
		'totaal_rez',
		'label',
		'events',
		'booking',
		'medias'
);

/*
   ___                             _       
  / _ \ _ __    _ __ ___  __ _  __| |_   _ 
 | | | | '_ \  | '__/ _ \/ _` |/ _` | | | |
 | |_| | | | | | | |  __/ (_| | (_| | |_| |
  \___/|_| |_| |_|  \___|\__,_|\__,_|\__, |
                                     |___/ 
 */
$(document).ready(function(){ 
	resize_content();
	$('a').click(function(){
		hash = $(this).attr('hash').substring(1);
		hash_contenu(hash);
	});
	hash = location.hash.substring(1);
	hash_contenu(hash);
}); 
$(window).resize(function(){
	resize_content();
	resize_content();
});

/*
  _____                 _   _                 
 |  ___|   _ _ __   ___| |_(_) ___  _ __  ___ 
 | |_ | | | | '_ \ / __| __| |/ _ \| '_ \/ __|
 |  _|| |_| | | | | (__| |_| | (_) | | | \__ \
 |_|   \__,_|_| |_|\___|\__|_|\___/|_| |_|___/
                                              
 */
//fonction qui va afficher le contenu souhaité en fonction du hash de l'url
function hash_contenu(addr) {
	//dossier où se situent les pages html de contenu
	cible = dossier_pages;
	//Si pa de hash, alors on charge la page d'accueil définie plus haut dans les vars
	if (addr == '') {
		cible = cible + page_accueil;
		dossier_en_cours = page_accueil;
		if (!is_menu && in_array(page_accueil, tab_menu)) is_menu = page_accueil;
	} else {
		//on analyse le hash passé pour voir si il éxiste des dossiers
		var elem = addr.split('/');
		//is_menu = false : pour l'instant, la page demandée n'est pas dans l'arborescence du menu principal
		var is_menu = false;
		var elem_len = elem.length - 1;
		ssmenu_test = elem[elem_len];
		dossier_en_cours = elem[0];
		if (in_array(elem[0], tab_menu)) is_menu = elem[0];
		cible = cible + addr;
	}
	//si is_menu, alors on style le menu pour que la rubrique concernée soit mise en avant dans les onglets
	if (is_menu) {
		$('#menu').css({
			background : 'url(images/menu/menu_lien_' + is_menu + '.png) no-repeat'
		});
	} else {
		$('#menu').css({
			background : 'url(images/menu/menu_off.png) no-repeat'
		});
	}
	
	//Mise en avant du bouton de sous menu
	if (isset(document.getElementById('ssmenu_' + ssmenu_test))) {
		if (current_ssmenu) current_ssmenu.removeClass('on');
		$('#ssmenu_' + ssmenu_test).addClass('on');
		current_ssmenu = $('#ssmenu_' + ssmenu_test);
	}
	
	//Affichage de la zone header de page
	if (isset(document.getElementById('header_' + dossier_en_cours))) {
		if (header_en_cours) header_en_cours.hide();
		$('#header_' + dossier_en_cours).show();
		header_en_cours = $('#header_' + dossier_en_cours);
	} else {
		if (header_en_cours) header_en_cours.hide();
		header_en_cours = false;
	}
	//		//$("#content").('a').click(function(){
	cible = cible + ext_file;
	$("#content").load(cible, function(){
		$("#content").find('a').click(function() {
			hash = $(this).attr('hash').substring(1);
			hash_contenu(hash);
		})

	});
}

function valide_form_newsletter(form) {
	var email = form.newsletter_email.value;
	form.newsletter_email.value = '';
	$.ajax({
		type: "POST",
		url: "pages/newsletter.php",
		data: "email=" + email,
		success: function(html){ 
			$("#content").html(html);
		}
	});
	return false;
}

//fonction qui va replacer les barres de footer, le dégradé et la forme en bas
function resize_content() {
	var w = $( window ); 
    var H = w.height();
    var W = w.width();
    
    var d = $( document );
    var HD = d.height();

    hauteur_reference = HD;
    if (HD > H) {
    	hauteur_reference = H;
    }
    if (hauteur_reference < min) hauteur_reference = min;
    
    var new_height = hauteur_reference - $('#degrade').height();
    $('#degrade').css({
    	'width'	: W + 'px',
    	'top'	: new_height + 'px'
    });
    
    new_height = hauteur_reference - $('#forme2').height();
    $('#forme2').css({
    	'top'	: new_height + 'px'
    });
    
    new_height = hauteur_reference - $('#bottom').height();
    new_height = new_height - 15;
    $('#bottom').css({
    	'width'			: W + 'px',
    	'visibility'	: 'visible',
    	'top'			: new_height + 'px'
    });
}
//like php function is_array
function in_array (needle, haystack, argStrict) {
    var key = '', strict = !!argStrict; 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;            }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) {                return true;
            }
        }
    }
     return false;
}
//like php function isset (vérifier qu'un élément existe)
function isset () {
    var a=arguments, l=a.length, i=0;
        if (l===0) {
        throw new Error('Empty isset'); 
    }
    
    while (i!==l) {        if (typeof(a[i])=='undefined' || a[i]===null) { 
            return false; 
        } else { 
            i++; 
        }    }
    return true;
}
