﻿//Initialiser l'affichage du menu de gauche
function InitMenuGauche()
{
	//Vérifier s'il y a des menus
	if ($('div.menu.vertical.menu-vertical ul ul').length > 0 ) {
			//Caché les sous-menus de chaque menu trouvé
			$('div.menu.vertical.menu-vertical ul ul').css('display','none').each(function () {
				//Si le menu n'est pas sélectionné, 
				//associer un événement sur le menu pour que les sous-menus s'affichent au passage du la souris
				if (!$(this).parent('li').hasClass('static.selected')) {
					var submenu = $(this);
					var sm_t;
					submenu.prev('a').bind('mouseenter focus', function () {
						sm_t = setTimeout(function(){submenu.slideDown();}, 750);
					}).bind('mouseleave blur', function () {
						clearTimeout(sm_t);
					});
					//Si présence de sous-menus, afficher une flèche à côté du menu
					if ($(this).parent('li').length > 0 )	{
						$('<small>&nbsp;&gt;</small>').appendTo($(this).prev('a').children().children());
					}
				}
			});
			//Afficher au complet le menu parent sélectionné
			$('div.menu.vertical.menu-vertical ul li.static.selected ul').css('display','block');
			//Afficher au complet le menu enfant sélectionné
			$('div.menu.vertical.menu-vertical ul li ul li.static.selected').parent('ul').css('display','block');
			//Afficher les hyperliens en vert dans le menu enfant sélectionné (écrase le style dans base_surcharge.css : div.menu.vertical.menu-vertical li.static.selected a:link, div.menu.vertical.menu-vertical li.static.selected a:visited)
			$('div.menu.vertical.menu-vertical ul li ul li.static.selected').parent('ul').children().children().css('color', '#339900');
		}
}

var CSST = {

  init : function() {

    // remplace valeur par défaut du champ recherche
    $('#searchbox input:text').focus(function() {
      if ($(this).val() == 'Recherche') $(this).val('');
      $('#search_btn').addClass('on');
    }).blur(function() {
      if ($(this).val() === '') $('#search_btn').removeClass('on');
    });
    $('#search_btn').hover(
      function() {$('#search_btn').addClass('on');},
      function() {$('#search_btn').removeClass('on');}
    );

    // attache le megamenu au btn explorer
    var exp_on_t;
    var exp_off_t;
    var exp_btn = $('#btn_explorer a');
    var exp_menu = $('#menu_explorer');

    exp_btn.click(function() {
      exp_menu.toggle();
      exp_btn.toggleClass('on');
      return false;
    }).mouseenter(function() {
      exp_on_t = setTimeout(function(){
        exp_menu.show();
        exp_btn.addClass('on');
      }, 500);
    }).mouseleave(function() {
      clearTimeout(exp_on_t);
      exp_off_t = setTimeout(function(){
        exp_menu.hide();
        exp_btn.removeClass('on');
      }, 500);
    });

    exp_menu.mouseenter(function() {
      clearTimeout(exp_off_t);
      exp_menu.show();
      exp_btn.addClass('on');
    }).mouseleave(function() {
      exp_off_t = setTimeout(function(){
        exp_menu.hide();
        exp_btn.removeClass('on');
      }, 500);
    });

    // active les menus de liens Prevention
    if ( $('#prevention_links .linkbox').length > 0 ) {
      $('#prevention_links .linkbox').addClass('linkbox_js');
      $('#prevention_links .linkbox_menu a').click(function() {
        var current = $('#prevention_links .linkbox:visible');
        var that = $(this);
        var target = that.attr('href');
        var show = function() {
          $('#prevention_links .linkbox_menu li').addClass('dimmed');
          that.parent('li').removeClass().addClass('select');
          $(target).slideDown();
        }
        if (current.length > 0) {
          var currentId = '#'+current.attr('id');
          current.slideUp(function() {
            $('#prevention_links .linkbox_menu li').removeClass();
            if (target != currentId) {
              show();
            }
          });
        } else {
          show();
        }
        return false;
      });
    }

    // active les sous-menus
    if ( $('#menu ul ul').length > 0 ) {
      $('#menu ul ul').css('display','none').each(function () {
        if (!$(this).parent('li').hasClass('select')) {
          var submenu = $(this);
          var sm_t;
          submenu.prev('a').bind('mouseenter focus', function () {
            sm_t = setTimeout(function(){submenu.slideDown();}, 750);
          }).bind('mouseleave blur', function () {
            clearTimeout(sm_t);
          });
        }
      });
      $('#menu ul li.select ul').css('display','block');
    }

    // active les cibles étendues
    // le lien pour la cible est identifiée par la class "bigtarget"
    // suivi de la class "click-x" où x identifie l’élement cible
    // ex.: <a class="bigtarget click-li" href="page.html">
    $('.bigtarget').each(function() {

      var elClass = $(this).attr('class').split(' ');
      elClass = $.grep(elClass, function (a) {
        return a.indexOf('click-') === 0;
      });
       
      if (elClass[0]) {
        var target = elClass[0].substring(6);
        
         /* Mis en commentaire temporairement (S.Garant), ce bloc de code met 
            une erreur javascript sur les pages */
        //$(this).bigTarget({
          //hoverClass: 'clickable',
          //clickZone : target+':eq(0)'
        //});
      }

    });

    // active les listes en tiroir
    if ( $('.drawerbox').length > 0 ) {
      $('.drawerbox .drawer').parent('li').addClass('has_drawer');
      $('.has_drawer h3').click(function() {
        $(this).parent('li').toggleClass('opened');
        $(this).next('.drawer').slideToggle();
      });
    }

  }

}

$(function() {
  CSST.init();
});

// Pour permettre d'ouvrir un Popup à partir des contenucommun (EditeurHtml)
function AfficherPopup(o) {
	var targetUrl = $(o).attr("href");
	var paramFenetre = "width=860,height=700,location=0,menubar=0,toolbar=0,resizable=1,status=0,scrollbar=1";
	var nomFenetre = "popupEditeurHtml";
	if(targetUrl != "" && targetUrl != "#")
	{
		window.open(targetUrl, nomFenetre, paramFenetre);
	}
}

// Pour permettre de rafraîchir ou rediriger vers une page en fonction de la valeur d'une liste déroulante 
function AfficherValeur(dropDown) {
     var valeurSelectionne = dropDown.value;
     window.location = valeurSelectionne;
}

