// Création : 28 avril 2011
// Utilisation : calqué sur le fonctionnement du mega menu arrondissement, adaptation pour le portail.

// ifr_codePostal_loaded = function(){};

// var IE = false;
// var d;		// document
// var _ifr;	// objet iFrame
// var _ifrW;	// iFrame.window
// var _ifrD;	// iFrame.window.document

/*function reset_env_var(){
	d = document;
	if (d.frames){
		IE = true;
		_ifr = d.frames['ifr_codePostal'];
	}else{
		_ifr = d.getElementById('ifr_codePostal');
	}
	_ifrW = _ifr.window || _ifr.contentWindow;
	_ifrD = _ifrW.document;
}*/


/* Code Postal */
function isValidPostalcode(theForm, url) {
	var codePostal = removeSpaces(theForm.codePostal.value);
	var langue = theForm.lang.value;
	var urlPath = url + 'get?lang=' + langue + '&codePostal=' + codePostal;

	if ((codePostal.length == 6 && codePostal.search(/^[a-zA-Z]\d[a-zA-Z]\d[a-zA-Z]\d$/) != -1) || (codePostal.length == 7 && codePostal.search(/^[a-zA-Z]\d[a-zA-Z]-\d[a-zA-Z]\d$/) != -1)){
	theForm.codePostal.value = codePostal;
		/*ifr_codePostal_loaded = function(){
			reset_env_var();
		};*/
		newWin(urlPath);
	} else {
	 theForm.codePostal.focus();
	if (langue == 'en'){
		alert("Your 'POSTAL CODE' is invalid.");
	}else{
		alert("Votre 'CODE POSTAL' est invalide.");
	}
	}
	return false;
}

/* Code Postal */


//Roll in
function megaHoverOver(){
	$(this).find(".contenus_menus").stop().fadeTo(200, 1).show(); //Affichage
}
//Roll out
function megaHoverOut(){
		$(this).parent().find("a.n1").removeClass("active");
		$(this).find(".contenus_menus").stop().fadeTo(250, 0, function() {
 		if($(".cOuv_titre_mmArrond").hasClass("active")){
			$(".cOuv_titre_mmArrond").toggleClass("active").next(".cOuv_cont_mmArrond").slideToggle("fast");
		}
		$(this).hide();
			//Assure la persistance de l'état over du lien primaire si la souris est quelque part toujours dans le menu
			$("ul#liens_primaires li .contenus_menus").hover(
				function () {
					$(this).parent().find("a.n1").addClass("active");
				}, 
				function () {
					$(this).parent().find("a.n1").removeClass("active");
				}
			);
		});
}


//Trouve une correspondance entre le id d'un lien du menu horizontale et le nom systeme du repertoire, affecte une classe .act
function setTopMenuSelectedClass(){
	
	if (typeof(repNiv1) != 'undefined'){
		$("#menu a.n1").each(function(index){							
			if (repNiv1.substr(4) == $(this).attr('id')){
				$(this).addClass("act");
			}
		});
	}
}


$(document).ready(function() {	
													 
/*	$.ajax('http://servicesenligne2.ville.montreal.qc.ca/sel/LesArrondissements/get?lang=fr&codePostal=h1w3j5',{
		success:function(){
				alert('allo');
		},
		error:function(){
				alert('oh no');
		},
		dataType:'html',
		crossDomain:true
	})*/
													 
	/*frm_arrondissementForm	= document.forms["arrondissementForm"];
	frm_arrondissementForm.target = "ifr_codePostal";*/
	
	
	
	if ($("html").hasClass('ie')){
		$("#liens_primaires li a.n1").corner("cc:#202020 top 7px");
	}else{
		$("#liens_primaires li a.n1").corner("top 5px");
	}
	$("#bloc_ram").corner("5px");	
	$("#bloc_services_ligne").corner("5px");
	
	$(".cOuv_cont_mmArrond").hide();
	
	//Appelle de la fonction menuToggle au click
	$("div.cOuv_titre_mmArrond").click(function(){
		$(this).toggleClass("active").next(".cOuv_cont_mmArrond").slideToggle("fast");
	});
	
	//Initiliasation et fonctions de chargement

	//var groupeDePagesLocal = grppages;
	//var langue = langueActuelle();
	setTopMenuSelectedClass();
	/***  DEBUT code de gestion des MENUS bigbox ***/
	/*
	Utilisation de la librairie hoverIntent : http://cherne.net/brian/resources/jquery.hoverIntent.html
	La largeur est calculée à l'aide de la somme des colonnes, l'utilisation de colonnes de classe .col_contenus_menus est essentielle, même si il n'y en a  qu'une
	*/

	//Config de HoverIntent + association des fonctions in + out
	var config = {
		 sensitivity: 7, // number = sensitivity threshold (must be 1 or higher)
		 interval: 100, // number = milliseconds for onMouseOver polling interval
		 over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
		 timeout: 300, // number = milliseconds delay before onMouseOut
		 out: megaHoverOut // function = onMouseOut callback (REQUIRED)
	};

	$("ul#liens_primaires li").hoverIntent(config); //Affectation des actions sur les boutons de liens primiares
	/***  FIN code de gestion des menus ***/
});
