	var territ_ids = new Array(0,8,9,10,12,13,14,16,17,19,20,21,22,24,25,26,27,36,38,40);
	var groupe_pages = [
		"Ville de Montréal",
		"arrond_sla",
		"arrond_ahc",
		"Arr_Mon",
		"arrond_anj",
		"arrond_sle",
		"arrond_vsp",
		"arrond_out",
		"arrond_cdn",
		"arrond_lch",
		"arrond_lsl",
		"arrond_ver",
		"arrond_sou",
		"arrond_vma",
		"arrond_pmr",
		"arrond_rpp",
		"Arr_Mer",
		"arrond_ibi",
		"arrond_pir",
		"arrond_rdp"
	];
	var noms_territoires = [
		"Ville de Montréal",
		"Saint-Laurent",
		"Ahuntsic-Cartierville",
		"Montréal-Nord",
		"Anjou",
		"Saint-Léonard",
		"Villeray&#8211;Saint-Michel&#8211;Parc-Extension",
		"Outremont",
		"Côte-des-Neiges&#8211;Notre-Dame-de-Grâce",
		"Lachine",
		"LaSalle",
		"Verdun",
		"Le Sud-Ouest",
		"Ville-Marie",
		"Le Plateau-Mont-Royal",
		"Rosemont&#8211;La Petite-Patrie",
		"Mercier&#8211;Hochelaga-Maisonneuve",
		"L'Île-Bizard&#8211;Sainte-Geneviève",
		"Pierrefonds&#8211;Roxboro",
		"Rivière-des-Prairies&#8211;Pointe-aux-Trembles"
	];
	var form_data = new Array();
	var territ_data = new Array();

function Get_results(obj,isOK){
//Sert à obtenir les éléments du formulaire passé en paramètre et à formatter un hyperlien pour la production de résultats
//S'il y a un second paramètre, c'est qu'il n'y a pas lieu de valider les données. Il s'agit de navigation.
	var isValid;
	if(arguments.length>1)
	{
		isValid = isOK;
	}
	else
	{
		isValid= Validate(obj);	
	}
	
	var lien=Get_context()+"/sel/sypre-consultation/recherchereglement?params=";
	if(isValid)
	{
		for(var i=0;i<obj.elements.length;i++)
		{
			if((obj.elements[i].type!="radio")&&(obj.elements[i].name!="orderdate")&&(obj.elements[i].name!="endorderdate"))
			{
				(i==0)?lien += obj.elements[i].name + "=" + escape(obj.elements[i].value):lien += "**" + obj.elements[i].name + "=" + escape(obj.elements[i].value);
			}

		}
		
		if(arguments.length>1)
		{
			var currentlocation = this.location.href.split("params_recherche=");
			window.location = currentlocation[0] + "params_recherche=" + lien;
		}
		else
		{
			window.location = obj.action + "?params_recherche=" + lien;	
		}
		
	}
	return false;
}

function Validate(obj,supplement){
//var inutiles= new Array("reglement","de","du","et","la","le","les","sur","des","au","en","aux","dans","pour","ou","un","une");
	with(obj){
	//Valider le critère de recherche
	//Enlevez les mots inutiles
		
		if(arguments.length>1)
		{
			//Validation supplémentaire pour nos règlements
			if((expression.value.trim().noAccents()=="")&&(no_reglement.value.trim().noAccents()==""))
			{
				alert("Vous devez indiquer soit un critère de recherche, soit un numéro de règlement");
				expression.focus();
				return false;
			}
		}
		critere.value = expression.value.trim();
		//}
		//Déterminer le type de recherche
		if(more_recherche[0].checked)
		{
			type_recherche.value=more_recherche[0].value;	
		}
		if(more_recherche[1].checked)
		{
			type_recherche.value=more_recherche[1].value;	
		}
		if(more_recherche[2].checked)
		{
			type_recherche.value=more_recherche[2].value;	
		}		
	//Valider la date
		if((bro_orderdate.value=="AAAA-MM-JJ")&&(bro_endorderdate.value=="AAAA-MM-JJ"))
		{
			bro_orderdate.value="";
			bro_endorderdate.value="";
		}
		
		if(bro_endorderdate.value!="" && bro_endorderdate.value!="AAAA-MM-JJ" && (bro_orderdate.value==""||bro_orderdate.value=="AAAA-MM-JJ"))
		{
			alert("S'il-vous-plaît, sélectionnez une date de début")
			return false;
		}
		
		
		if(bro_orderdate.value!="")
		{
			//Y a-t-il une date de fin?
			if(bro_endorderdate.value=="" || bro_endorderdate.value=="AAAA-MM-JJ")
			{
				alert("S'il-vous-plaît, sélectionnez une date de fin")
				return false;
			}
			//Les dates sont-elles valides
			var chiffres = bro_orderdate.value.split("-")
			if(chiffres.length!=3)
			{
				return NotGoodDate(obj,0);
			}
			//Tester jour
			if((parseInt(chiffres[2])<1)||(parseInt(chiffres[2])>31))
			{
				return NotGoodDate(obj,0);
			}
			//Tester mois
			if((parseInt(chiffres[1])<1)||(parseInt(chiffres[1])>12))
			{
				return NotGoodDate(obj,0);
			}
			//L'intervalle est-il valide?
			var nombres = bro_endorderdate.value.split("-");
			if(nombres.length!=3)
			{
				return NotGoodDate(obj,0);
			}
			if(parseInt(nombres[0])<parseInt(chiffres[0]))//annee
			{
				return NotGoodDate(obj,1);
			}
			if((parseInt(nombres[1])<parseInt(chiffres[1]))&&(parseInt(nombres[0])==parseInt(chiffres[0])))//mois de la même annee
			{
				return NotGoodDate(obj,1);
			}
			if((parseInt(nombres[2])<parseInt(chiffres[2]))&&(parseInt(nombres[1])==parseInt(chiffres[1]))&&(parseInt(nombres[0])==parseInt(chiffres[0])))//jour du meme mois,de la même année
			{
				return NotGoodDate(obj,1);
			}
			
			// Vérifier que les dates sélectionnées sont antérieurs ou égales à aujourd'hui
			
			maintenant = new Date();
			
			if ((parseInt(chiffres[0])==parseInt(maintenant.getFullYear()) && parseInt(chiffres[1])==parseInt(maintenant.getMonth())+1 && parseInt(chiffres[2]) > parseInt(maintenant.getDate())) || (parseInt(nombres[0])==parseInt(maintenant.getFullYear()) && parseInt(nombres[1])==parseInt(maintenant.getMonth())+1 && parseInt(nombres[2]) > parseInt(maintenant.getDate())))
			{
				return NotGoodDate(obj,2);
			}
			
		}
	}
	
	return true;
}

function NotGoodDate(obj,msg_flag){
	//Affichage un message si la date est incorrecte ou l'intervalle de recherche est incohérent
	var message="";
	switch (msg_flag)
	{
		case 0:
		message="Désolé, mais il ne s'agit pas d'une date valide"
		break;
		case 1:
		message="Désolé, mais l'intervalle retenu n'est pas valide";
		break;
		case 2:
		message="Désolé, mais les dates sélectionnées doivent être inférieures ou égales à la date d'aujourd'hui";
		break;		
	}
	
	/*(msg_flag==0)?message="Désolé, mais il ne s'agit pas d'une date valide":message="Désolé, mais l'intervalle retenu n'est pas valide";*/
	alert(message)
	with(obj){
		bro_orderdate.value="AAAA-MM-JJ";
		//bro_orderdate.disable=true;
		bro_endorderdate.value="AAAA-MM-JJ";
		//bro_endorderdate.disable=true;
		bro_orderdate.focus();
	}
	return false;
}

function ResetSearch(){
		//Déterminer l'arrondissement
		for(var i=0;i<groupe_pages.length;i++)
		{
			if(document.frm_reglements.action.toUpperCase().indexOf(groupe_pages[i].toUpperCase())!=-1)
			{
				if(document.frm_reglements.acces.value=="0")
				{
					alert("La recherche de règlements à l'extérieur de la sphère de juridiction d'un arrondissement n'est pas autorisée.");
					document.getElementById("yes_search").style.display="none";
				}
				else
				{
					document.getElementById("applic_territ_name").innerHTML = noms_territoires[i];
					document.frm_reglements.applic_territ.value = territ_ids[i];
				}
				break;
			}
		}
	if(document.frm_reglements.action.toUpperCase().indexOf("ARCHIVES")!=-1)
	{
		document.frm_reglements.statut.value="2";	
	}
}

function WriteData(j,tableau){
	
	if(arguments.length==1)
	{
		for(var i=0;i<territ_ids.length;i++)
		{
			if(territ_ids[i]==j)
			{
				document.write(noms_territoires[i]);
				break;
			}
		}
	}
	else
	{
		
		var tempo = new Array();
		for(var i=0;i<territ_data.length;i++)
		{
			tempo[i] = Get_territ_name(territ_data[i]);
		}
		territ_data = new Array();
		tempo = BubbleSortStrings(tempo);
		
		for(i=0;i<tempo.length;i++)
		{
			document.write("<span class=\"eBlack10\">"+tempo[i]+"</span><br/>");	
		}
		
	}
}

function SetHiddenForm(obj,p,valeur){
	//Fonction virtuelle et surchargée
	if(p==-1)
	{
		obj.action = Get_Element_Value(0);
		for(var i=0;i<obj.elements.length;i++)
		{
			obj.elements[i].value = Get_Element_Value(i+1);
		}
	}
	else
	{
		switch(p){
			case 2:
				//Modification de la position de départ	
				obj.start_pos.value=valeur;
			break;
			case 99:
				//Modification du critère
				obj.critere.value=valeur;
			break;
			default:
				
				obj.elements[p].value=valeur;
			break;
		}
		Get_results(obj,true);
	}
}

function Set_Element_Value(){
	if(source_recherche.indexOf("?")!=-1)
	{
		var signature = source_recherche.split("?params=");
		form_data.push(signature[0]);
		var params = signature[1].split("**");
		var composants;
		for(var i=0;i<params.length;i++)
		{
			composants = params[i].split("=");
			form_data.push(composants[1]);
			//alert(composants[0] +"*"+i+"**"+composants[1]);
		}
	}
	else
	{
		for(var i=0;i<20;i++)
		{
			form_data[i]=i;
		}
	}
}

function Get_Element_Value(p){
	return form_data[p];	
}

function Get_territ_name(valeur){
	var nom = "";
	for(var i=0;i<territ_ids.length;i++)
	{
		if(territ_ids[i]==valeur)
		{
			nom = noms_territoires[i];
			break;
		}
	}
	return nom;
}

function Amenagement_territoire(){
	
	Double_Bubble();
	for(var i=0;i<territ_ids.length;i++)
	{
		if(territ_ids[i]==0)
		{
			document.writeln("<option selected value=\""+ territ_ids[i] +"\">"+ noms_territoires[i] +"</option>");
		}
		else
		{
			document.writeln("<option value=\""+ territ_ids[i] +"\">"+ noms_territoires[i] +"</option>");
		}
	}
}

function Double_Bubble(){
	var tmp;
	var l = noms_territoires.length-1;
	for (var i=l;i>=0; i--)
	{
  		for (var j=1;j<=i; j++)
		{
    		if (noms_territoires[j-1].toUpperCase() > noms_territoires[j].toUpperCase()) 
			{  
      			tmp = noms_territoires[j-1];         
      			noms_territoires[j-1] = noms_territoires[j];
      			noms_territoires[j] = tmp;
				tmp = territ_ids[j-1];         
      			territ_ids[j-1] = territ_ids[j];
      			territ_ids[j] = tmp;
  			}
		}
	}	
}


function BubbleSortStrings(tableau){
	var tmp;
	var l = tableau.length-1;
	for (var i=l;i>=0; i--)
	{
  		for (var j=1;j<=i; j++)
		{
    		if (tableau[j-1].toUpperCase() > tableau[j].toUpperCase()) 
			{  
      			tmp = tableau[j-1];         
      			tableau[j-1] = tableau[j];
      			tableau[j] = tmp;
  			}
		}
	}
	return tableau;
}

function Reset_Results(p,valeur){
	var obj = document.frm_reglements;
	var temp_url;
	var url_non_encodee;
	if(p==-1)
	{
		var si = document.frm_bidon.limite_type_recherche.selectedIndex;
		//SetHiddenForm(obj,1,document.frm_bidon.limite_type_recherche.options[si].value);
		//var composants = document.location.href.split("**type_regl=");
		var composants = document.location.href.split("type_regl=");
		
		//window.location = composants[0] + "**type_regl=" + document.frm_bidon.limite_type_recherche.options[si].value + composants[1].substring(composants[1].indexOf("**"),composants[1].length);
		//window.location = composants[0] + "type_regl=" + document.frm_bidon.limite_type_recherche.options[si].value + composants[1].substring(composants[1].indexOf("**"),composants[1].length);
		temp_url = composants[0] + "type_regl=" + document.frm_bidon.limite_type_recherche.options[si].value + composants[1].substring(composants[1].indexOf("**"),composants[1].length);
		//window.location = temp_url.replace(/start_pos=\d*/i, "start_pos=1");
		window.location = temp_url.replace(/start_pos=\d*/i, "start_pos=1").replace('(','%28').replace(')','%29');
		//window.location = encodeURI(temp_url.replace(/start_pos=\d*/i, "start_pos=1"));
		
	}
	else
	{
		
		var velements = valeur.split("*"); 
		var lien=Get_context()+"/sel/sypre-consultation/recherchereglement?params=";
		var currentlocation = this.location.href.split("params_recherche=");
		//Je dois reconstituer le lien mais sans changer les valeurs du fomulaire de recherche
		// car ça bogue au retour vers les résultats
		
		var original_params = source_recherche.split("**");
		var lien = "";
		var pcomp;
		for(var i=0;i<original_params.length;i++)
		{
			if(original_params[i].indexOf("no_reglement")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=" + velements[0];
			}
			if(original_params[i].indexOf("start_pos")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=1";
			}
			if(original_params[i].indexOf("applic_territ")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=" + velements[1];
			}
			if(original_params[i].indexOf("instances")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=" + velements[2];
			}
			if(original_params[i].indexOf("bro_orderdate")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=" + velements[3];
			}
			if(original_params[i].indexOf("bro_endorderdate")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=" + velements[3];
			}
			if(original_params[i].indexOf("no_regl_cond")!=-1)
			{
				pcomp = original_params[i].split("=");
				original_params[i] = pcomp[0] + "=";
			}
			if(i==0)
			{
				lien =	original_params[i];
			}
			else
			{
				lien += "**" + 	original_params[i];
			}
		}
		//window.location = currentlocation[0] + "params_recherche=" + lien+"&has_been_there=1";
		temp_url = currentlocation[0] + "params_recherche=" + lien+"&has_been_there=1";
		window.location = temp_url.replace('(','%28').replace(')','%29');
		//window.location = encodeURI(currentlocation[0] + "has_been_there=1&params_recherche=" + lien);
	}
}

function Thesee(){
//Permet de revenir à la page de recherche en utilisant le fil d'Ariane
//var labyrinthe = document.getElementById("ariane").innerHTML.toUpperCase(); // ne fonctionne pas, car ariane n'existe pas
var labyrinthe = document.getElementById("fil_ariane").innerHTML.toUpperCase();
//Extraire le url du lien de recherche
var ia = labyrinthe.lastIndexOf("<A");//Trouver dernier lien qui est la page de recherche
var ai = labyrinthe.lastIndexOf(">");
var lastanchor = labyrinthe.substring(ia,ai);// Fin Trouver dernier lien qui est la page de recherche
var hrefi = lastanchor.indexOf("HREF=");//Extraire l'hyperlien du code HTML
var href = lastanchor.substr(hrefi);
var guii = href.indexOf("\"")+1;
href = href.substr(guii);
guii = href.indexOf("\"");
href = href.substring(0,guii);// Fin Extraire l'hyperlien du code HTML
var hrefcomp = href.split("&_schema");
this.location = hrefcomp[0].toLowerCase(); //Des parties du lien doivent être minuscules


}

function Weight_Watcher(poids){
	var etiquettes = new Array(" octets"," ko"," Mo");
	var balance = poids/1024;
	var poidsMo = 0;
	
	if(balance<1)
	{
		document.write(poids+etiquettes[0]);	
	}
	else
	{
		if(balance>1000)
		{
			//document.write(String(balance).substr(0,4)+etiquettes[2]); bogue!! remplacé par les 2 lignes suivantes.
			poidsMo = balance/1024;
			//document.write(String(poidsMo).substr(0,4).replace('.',',')+etiquettes[2]);
			document.write(String(poidsMo.toFixed(2)).replace('.',',')+etiquettes[2]);
			
		}
		else
		{
			//document.write(String(balance).substr(0,4).replace('.',',')+etiquettes[1]);
			document.write(String(balance.toFixed(0)).replace('.',',')+etiquettes[1]);
		}
	}
	
}

function Get_context(){

	var page_url = document.location.href.toUpperCase();
	return page_url.substr(0,page_url.indexOf("QC.CA")+5);
}


function Gouvernail(){
		
	var boldy = "<span class='eMediumGrey10Bold'>";
	var endboldy = "</span>";
	var startloop=1;
	if(currentpage>5)
	{startloop=currentpage-5;}
	var endloop = startloop + 11;
	for(var i=startloop;i<endloop;i++)
	{
		if(i==currentpage)
		{
			document.writeln(boldy+i+endboldy+"&nbsp;");
		}
		else
		{
			
			document.writeln("<a href='Javascript: get_page(" + i + ")' class='eMediumGrey10' title='Page "+i+"'>"+i+"</a>");
		}
		if((i*crement)>=total)
		{break;}
	}
}

function suivant(){
	if((currentpage*crement)<parseInt(total))
	{
		var page = currentpage*crement+1;
		search_more(page)
	}
}

function precedant(){
	if(currentpage>1)
	{
		var page = ((currentpage*crement))-crement-crement+1;
		search_more(page);
	}
}

function get_page(page){
	var lapage = (page*crement)+1-crement;
	search_more(lapage)
}

function search_more(page){
	
	var composants = document.location.href.split("**start_pos=");
	window.location = composants[0] + "**start_pos=" + page + composants[1].substring(composants[1].indexOf("**"),composants[1].length);
}

function format_date(ladate){
		var html="";
		var noms_mois_fr = new Array('','janvier','f&eacute;vrier','mars','avril','mai','juin','juillet','ao&ucirc;t','septembre','octobre','novembre','d&eacute;cembre');
		var date_elements = ladate.split("-");//format : annee, mois, jour
		if(date_elements[1].indexOf("0")==0)
		{
			date_elements[1] = date_elements[1].substr(1,1);
		}
		if(date_elements[2].substr(0,1)=="0")
		{
			date_elements[2]=date_elements[2].substr(1,1);
		}
		if(date_elements[2]=="1")
		{
			date_elements[2]="1<sup>er</sup>";
		}
		//alert("Test--> chiffre du mois: " + parseInt(date_elements[1]));
		html = date_elements[2] + " " + noms_mois_fr[parseInt(date_elements[1])] + " " + date_elements[0];
		document.write(html);
	}
	
function select_type_recherche(){
		// Fonction servant à sélectionner l'élément choisi dans la liste déroulante (cf. selected)
		var grp_param = document.location.href.split("type_regl=");
		var val_type_regl = parseInt(grp_param[1].substring(0, grp_param[1].indexOf("**")));		
		
		switch (val_type_regl) {
			case 1:
				frm_bidon.limite_type_recherche.selectedIndex = 2;
				break;
			case 2:
				frm_bidon.limite_type_recherche.selectedIndex = 0;
				break;
			case 3:
				frm_bidon.limite_type_recherche.selectedIndex = 1;
				break;
			case 999:
				frm_bidon.limite_type_recherche.selectedIndex = 3;
				break;
		}
}


function Translate_this(){

	var ici = document.location.href;
	var debut_param;
	var params_requete;
	
	debut_param = ici.indexOf("params_recherche");
	
	if (debut_param!=-1)
	{
		//alert("Position: " + debut_param)
		params_requete = ici.substr(debut_param)
		params_requete = params_requete.replace("langue%3Dfr","langue%3Den");
		params_requete = params_requete.replace("langue=fr","langue=en");
		params_requete = params_requete.replace(/type_regl=\d*/i, "type_regl=999");
		params_requete = params_requete.replace(/start_pos=\d*/i, "start_pos=1");
		this.location = "/pls/portal/url/page/pes_sypre_en/rep_reglements/rep_recherche/resultats?" + params_requete;
		//alert("Requete: " + params_requete)
	}
	else
	{
		this.location = "/pls/portal/url/page/pes_sypre_en/rep_reglements/rep_recherche/recherche";
	}
}
