/*----------------------------------------------------------------------------//
// Javascript pour le site client  -------------------------------------------//
//----------------------------------------------------------------------------//
// Client : HLHL
//----------------------------------------------------------------------------*/

/*----------------------------------------------------------------------------*/
// Inclusion dynamique des fichiers externes javascripts
/*----------------------------------------------------------------------------*/
function importJavascript(src)
{
	document.write("<script type=\"text/javascript\" src=\"" + src + "\"></scr" + "ipt>");
}

/*----------------------------------------------------------------------------*/
// Importations de fichiers
/*----------------------------------------------------------------------------*/
importJavascript("/includes/js/plugins/accordion.js");
importJavascript("/includes/js/plugins/jquery.dimensions.js");
importJavascript("/includes/js/plugins/tooltip.js");
importJavascript("/includes/js/plugins/jquery.equalizecols.js");

/*----------------------------------------------------------------------------*/
// Declarations jQuery
/*----------------------------------------------------------------------------*/
function SetSelected(a) {
    jQuery("#Entete span a").removeClass("Actif");
	a.addClass("Actif");
}

/*function collapseList(node) {
	var subContent, toggleLink;
	$("li", node).each(function(){
		if (this.parentNode != node) return;
		subContent = $("ul", this).get(0);
		if (subContent) {
			toggleLink = $(subContent.parentNode).children("a");
			if (!toggleLink.hasClass("Actif")) {
				$("ul", this).hide();
			}
			$(toggleLink).click(function(){
				$(this).toggleClass("Actif");
				$(">ul", this.parentNode).slideToggle(250);
				return false;
			});
			collapseList(subContent);
		}
	});
}*/

function collapseDiv(node) {
	var subContent, toggleLink, lastLink;
	jQuery("li", node).each(function() {
		if (this.parentNode != node) return;
		subContent = jQuery("div", this).get(0);
		if (subContent) {
		    toggleLink = jQuery(subContent.parentNode).children("a");
			if (!toggleLink.hasClass("Actif")) {
			    jQuery("div", this).hide();
			}
			jQuery(toggleLink).click(function() {
				if (lastLink != null && lastLink != this) {
				    jQuery(lastLink).removeClass("Actif");
					jQuery(">div", lastLink.parentNode).hide();
				}
				jQuery(this).toggleClass("Actif");
				jQuery(">div", this.parentNode).toggle();
				lastLink = this;
				return false;
			});
			collapseDiv(subContent);
		}
	});
}

jQuery(document).ready(function() {

    // Correctifs d'apparences pour menu fixe
    jQuery("#NavFixe .Liens li:last-child").addClass("Dernier");
    var menuOuvert = false;
    jQuery("#NavFixe .Liens a").each(function() {
        if (jQuery(this).attr("rel") != null) {
            jQuery(this).mouseover(function() {
                jQuery("#NavFixe .Liens a").removeClass("Over");
                jQuery(this).click(function() { return false; });
                jQuery(this).addClass("Over");
                jQuery('#NavFixe .SousMenu .Contenu').hide();
                jQuery("#NavFixe .SousMenu #" + jQuery(this).attr("rel")).show();
                var hauteurMenu = jQuery(".SousMenu").height() - 2;
                jQuery(".SousMenu p.Note").css("top", hauteurMenu);
                if (!menuOuvert) {
                    jQuery("#NavFixe .SousMenu").show();
                    menuOuvert = true;
                }
            });
        } else {
            jQuery(this).mouseover(function() {
                jQuery("#NavFixe .Liens a").removeClass("Over");
                collapseMenuFixe();
            });
        }
    });
    function collapseMenuFixe() {
        if (menuOuvert) {
            jQuery('#NavFixe .SousMenu').hide();
            jQuery("#NavFixe .Liens a").removeClass("Over");
            menuOuvert = false;
        }
    }
    jQuery("#HautPage, #MenuPrincipal, #ContenuAcc, #ContenuInt, #ContenuIntLarge, #InfoRapide").bind("mouseover", collapseMenuFixe);

    // Correctifs d'apparences pour menu principal
    jQuery("#MenuPrincipal").Accordion({
        selectedClass: 'Actif',
        header: '.SousItems',
        alwaysOpen: false,
        animated: true,
        active: '.Actif',
        showSpeed: 400,
        hideSpeed: 400
    });
    if (jQuery("#MenuPrincipal ul").length > 0) {
        jQuery("#MenuPrincipal ul").Accordion({
            selectedClass: 'Actif',
            header: '.SousItems',
            alwaysOpen: false,
            animated: true,
            active: '.Actif',
            showSpeed: 400,
            hideSpeed: 400
        });
    }
    jQuery("#MenuPrincipal li:last-child").each(function() {
        if (!jQuery(this).children("a").hasClass("Actif")) {
            jQuery(this).addClass("DernierItem");
        }
    });
    jQuery("#MenuPrincipal ul ul li:last-child").each(function() {
        if (!jQuery(this).hasClass("DernierItem")) {
            jQuery(this).addClass("DernierItem");
        }
    });
    jQuery(".CentreRech #MenuPrincipal ul li:last-child").each(function() {
        jQuery(this).removeClass("DernierItem");
    });
    //jQuery("#MenuPrincipal").each(function() { collapseList(this); });

    // Correctifs d'apparences pour sous menus
    jQuery("#ContenuIntLarge .Contenu.FaireUnDon .Infos ul").each(function() { collapseDiv(this); });

    // Correctifs d'apparences pour les contenus
    refreshLayout();
    jQuery("#ContenuInt .Titre h1").css("margin-top", "-" + (jQuery("#ContenuInt .Titre h1").height() / 2) + "px");
    jQuery("#ContenuIntLarge .Titre h1").css("margin-top", "-" + (jQuery("#ContenuIntLarge .Titre h1").height() / 2) + "px");

    // StyleSwitcher
    jQuery("a.sizeA").click(function() { jQuery("body").css("font-size", "62.6%"); SetSelected(jQuery(this)); return false; });
    jQuery("a.sizeB").click(function() { jQuery("body").css("font-size", "68.9%"); SetSelected(jQuery(this)); return false; });
    jQuery("a.sizeC").click(function() { jQuery("body").css("font-size", "75.1%"); SetSelected(jQuery(this)); return false; });

    // Label automatique du champ de recherche COVEO
    jQuery("input:text").focus(function() {
        if (jQuery(this).val() == jQuery(this).attr("title")) { jQuery(this).val(""); };
    }).blur(function() {
        if (jQuery(this).val() == "") { jQuery(this).val(jQuery(this).attr("title")); };
    });

    // Chercheurs
    jQuery("#Chercheurs img").mouseover(function() {
        currentDetail = jQuery(this).parent();
        showDetail();
    });

    // Affichage des participants dans le panier
    jQuery("#PanierInscrip div.Participants a").click(function() {
        jQuery(this).parents("div.Details").children("table.Participants").toggle();
        jQuery(this).children("span").toggle();
        return false;
    });

    // Tabs
    jQuery("#ContenuAcc .Nouvelles .Tabs a")
	.each(function() {
	    if (jQuery(this).parents("li").hasClass("Actif")) {
	        jQuery("#ContenuAcc .Nouvelles ." + jQuery(this).attr("rel")).show();
	    } else {
	        jQuery("#ContenuAcc .Nouvelles ." + jQuery(this).attr("rel")).hide();
	    }
	})
	.click(function() {
	    jQuery("#ContenuAcc .Nouvelles .Tabs li").removeClass("Actif");
	    jQuery("#ContenuAcc .Nouvelles .Section").hide();
	    jQuery(this).parents("li").addClass("Actif");
	    jQuery("#ContenuAcc .Nouvelles ." + jQuery(this).attr("rel")).show();
	    return false;
	});

    /* ------------------------------------ Resources ---- */
    // FAQ (Accordion)
    jQuery("#Accordion span.Reponse").hide();
    jQuery("#Accordion .LinkWithChevron").click(function() {
        if (!jQuery(this).parent("div").hasClass("On")) {
            jQuery("#Accordion div.On").each(function() {
                jQuery(this).removeClass("On");
                jQuery(this).children("span.Reponse").slideUp(100);
            });
        }
        jQuery(this).parent("div").toggleClass("On");
        jQuery(this).siblings("span.Reponse").slideToggle(100);
        return false;

    });
	
	/*-----------------------------------------------------------------------
	// La Santé c'est mental !
	//---------------------------------
	// Fonctions pour les tabs
	-----------------------------------------------------------------------*/
	
	jQuery("#TabContainer div.TabContent").css("display", "none");
	jQuery("#TabContainer div.TabContent:first").css("display", "block");
	jQuery("#TabContainer ul.TabMenu a:first").addClass("On");
	
	jQuery("#TabContainer ul.TabMenu a").each(function() {
		var currentTabId = jQuery(this).attr("href").substr(1);
		jQuery(this).attr("href", "javascript:void(0);");
		jQuery(this).click(function() {
			jQuery("#TabContainer div.TabContent").css("display", "none");
			jQuery("#TabContainer ul.TabMenu a").removeClass("On");
			jQuery("#" + currentTabId).css("display", "block");
			jQuery(this).addClass("On");
		});
	});


});

function refreshLayout() {
    jQuery("hr").replaceWith("<div class=\"hr\">&nbsp;</div>");
    jQuery("a.LienBouton, a.LienBoutonForm, a.BtnInscrip").each(function() {
        jQuery(this).html("<span>" + jQuery(this).text() + "</span>");
	});
	jQuery("input:radio, input:checkbox").css("margin", (jQuery.browser.msie) ? "0px" : "3px");
}


function ShowLoading() {
    jQuery.blockUI({
    pageMessage: $('#domMessage').html(),
        overlayCSS: {
            backgroundColor: "#000",
            opacity: "0.75"
        },
        css: {
            backgroundColor: '#232323',
            border: '1px solid #ccc',
            padding: '4px',
            width: '260px',
            color: '#ccc'
        }
    });
    return true;
}
function HideLoading() {
    jQuery.unblockUI();
}

/* - Fonction : Validation des champs de formulaire - */
function ValidateForm(groupName, OnlyOneErrorByField, classError) {
    var msg = new Array();
    var ctl = new Array();

    if (classError != '') jQuery('.' + classError).removeClass(classError);

    //Ne pas oublier d'appliquer "Page_ClientValidate()" avant d'appeler cette procédure
    for (var i = 0; i < Page_Validators.length; i++) {
        if (Page_Validators[i].validationGroup == groupName && !Page_Validators[i].isvalid) {
            if (OnlyOneErrorByField) {
                var exist = false;
                for (var y = 0; y < ctl.length; y++) {
                    if (ctl[y] == Page_Validators[i].controltovalidate)
                        exist = true;
                }

                if (!exist) {
                    msg[msg.length] = Page_Validators[i].errormessage;
                    if (classError != '') jQuery('#' + Page_Validators[i].controltovalidate).addClass(classError);
                }
            }
            else {
                msg[msg.length] = Page_Validators[i].errormessage;
                if (classError != '') jQuery('#' + Page_Validators[i].controltovalidate).addClass(classError);
            }

            ctl[i] = Page_Validators[i].controltovalidate;
        }

    }

    return
}


/*-----------------------------------------------------------------------
// CLE 56
//---------------------------------
// Fonctions pour le player video
-----------------------------------------------------------------------*/
var BandeAnnonceID = "Yw4ggNgbXdA";
var currentVideoToPlay = "";
var timerBA = "";

function initVideoPlayer(BA_id) {
	if(BA_id) BandeAnnonceID = BA_id;
	//Bind du click sur les boutons des épisodes
	jQuery("a.BtEpisode").each(function(){
		var videoID = jQuery(this).attr("rel");
		if(videoID) {
			jQuery(this).click(function(){
				jQuery("a.BtEpisode").removeClass("On");
				changeVideo(jQuery(this).attr("rel"));
				jQuery(this).addClass("On");
			});
		}
	});
	//Bind duclick sur le bouton de la bande annonce
	jQuery("img.BtBandeAnnonce").css("cursor", "pointer").click(function(){ changeVideo(BandeAnnonceID); jQuery("a.BtEpisode").removeClass("On"); });
	//Execution dans 5 sec de la bande annonce
	if(jQuery("li.Episode01 a.BtEpisode").attr("rel"))
		lancementAuto = jQuery("li.Episode01 a.BtEpisode").attr("rel");
	else
		lancementAuto = BandeAnnonceID;
	timerBA = setTimeout('changeVideo(lancementAuto)', 5000);
}
function changeVideo(id){
	//Vérification du id s'il existe et/ou s'il joue déjà
    if (id && currentVideoToPlay != id) {

        clearTimeout(timerBA);
		var player = "<object width=\"608\" height=\"318\">";
			player += "<param name=\"movie\" value=\"http://www.youtube.com/v/"+ id +"&hl=fr&fs=1&autoplay=1&rel=0&iv_load_policy=3\"></param>";
			player += "<param name=\"allowFullScreen\" value=\"true\"></param>";
			player += "<param name=\"allowscriptaccess\" value=\"always\"></param>";
			player += "<param name=\"bgcolor\" value=\"#000000\"></param>";
			player += "<param name=\"wmode\" value=\"opaque\"></param>";
			player += "<embed src=\"http://www.youtube.com/v/"+ id +"&hl=fr&fs=1&autoplay=1&rel=0&iv_load_policy=3\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" bgcolor=\"#000000\" wmode=\"opaque\" allowfullscreen=\"true\" width=\"608\" height=\"318\"></embed>";
			player += "</object>";
		
		jQuery("#Visionneuse div.Player").html(player);
		currentVideoToPlay = id;
	}
}