function updateHidden () {
	var l = document.getElementById('SelectionVilles');
	var o = document.getElementById('ville');
	var tab = new Array();
		if (l.options.length !=0 ){	
			for (var i=0; i < l.options.length; i++) tab.push(l.options[i].value);
			o.value = tab.join(',');
		}else{
			o.value = -1;
			//document.getElementById('villes').style.display = "none";
			document.getElementById('SelecVilles').style.display = "none";
		}
}

function verifcontata() {
nb=0
	if (document.rech.ou.value == -1 ) {
			document.getElementById('villes').style.display = "none";
	} else {
			document.getElementById('villes').style.display = "block";
	}
//
   for(var i = 0; i < idtoto.length; i++)
   {
      if (idtoto[i] == document.rech.ou.value) 
      {
      nb=nb+1;
	  		document.getElementById('filtreVilles').options[0] = new Option ("Selectionner des villes...",-1);		
			document.getElementById('filtreVilles').options[nb] = new Option (toto[i],idtototiti[i]);		
      }
      if (idtoto[i] !== document.rech.ou.value) 
      {
			document.getElementById('filtreVilles').options[nb+1] = null;
      }
   }
nb=0
}
// SELECTION DES VILLES
	function affecte(aff,unaff,lim)							// AFFECTATION LIGNE PAR LIGNE
	{
		//window.alert(unaff.value);
		// afficher le bloque d'information des villes selectionnées
		if (unaff.value == -1 ) {
			window.alert("Vous devez selectionner une ville...");
			return;			
		} else {
			document.getElementById('SelecVilles').style.display = "block";
		//}
		// vérifier le nombre de villes sélectionnées
		//				window.alert("nom : "+aff.options.name);
		//if(aff.options.name == "SelectionVilles"){
			if (aff.options.length == lim)
			{
				window.alert("Vous ne pouvez pas sélectionner plus "+lim+" villes ...");
				return;
			}
		//}
		// affectation
			sel=unaff.options.selectedIndex;				// Indice de l'élément sélectionné
			//window.alert("ville selectionnée : "+unaff.options[sel].text);
			if (sel != -1) {	  								// Si -1, aucune sélection
				// vérifier si la ville n'a pas déjà été selectionée !
				ind=(aff.options.length);
				//window.alert("liste : "+ind);
				if (ind != 0){
					for (a = 0; a < ind; a += 1) {
						if(unaff.options[sel].value == aff.options[a].value) {
							window.alert("Vous avez déjà selectionné cette ville.");						
							return;
						}
					} // fin boucle FOR a
				}
				aff_txt = unaff.options[sel].text;			// Nom de l'élément de la liste
				aff_val = unaff.options[sel].value;			// Nom du value
				aff_opt = new Option(aff_txt,aff_val,1,0);	// On crée un nouvel élément: nom affiché + nom value
				aff.options[aff.options.length] = aff_opt;	// On insère l'élément dans la nouvelle liste
				var p = document.getElementById('SelectionVilles');
				p.size = ind+1;
				// récupérer les villes selectionnées
				updateHidden();
			}else{
				window.alert("Veuillez sélectionner un élément");
			}	// fin instruction si une ville est selectionnée !
		} // fin else afficher bloque	
	} // fin fonction
	
// DESELECTION DES VILLES
	function SuppVille(selection)							// AFFECTATION LIGNE PAR LIGNE
	{
		sel=selection.options.selectedIndex;				// Indice de l'élément sélectionné
		//window.alert("ville selectionnée : "+selection.options[sel].text);
			if (sel != -1) {
				selection.options[sel] = null;
				ind=(selection.options.length);
				var p = document.getElementById('SelectionVilles');
				p.size = ind;
				// récupérer les villes selectionnées
				updateHidden();
			}else{
				window.alert("Veuillez sélectionner une ville à supprimer");
			}	// fin instruction si une ville est selectionnée !
	}
