function ft_trt_det_cnt(objid)
{
	for (cpt=0;cpt<3;cpt++)
	{ document.getElementById( objid.substr(0,6) + cpt ).className='ft_ongletsrech_off_r';}
	document.getElementById(objid).className='ft_ongletsrech_on_r';
	
	for (cpt=0;cpt<3;cpt++)
	{ document.getElementById( 'cnt_' + objid.substr(0,6) + cpt ).style.display="none";}
	document.getElementById('cnt_' + objid).style.display="block";	
}


// Fiches techniques > Recherche
// Mise à jour des sélecteurs quand la valeur d'une liste change
function majMoteurRechercheFichetechnique(url, form, origine, categorieBerline, familleVU)
{
    var asynchrone =  !/async=0/.test(window.location.search);

    //--- On teste si le navigateur est ie6
    var IE6 = false

    var strChUserAgent = navigator.userAgent;
    var intSplitStart = strChUserAgent.indexOf("(",0);
    var intSplitEnd = strChUserAgent.indexOf(")",0);
    var strChMid = strChUserAgent.substring(intSplitStart, intSplitEnd);

    if(strChMid.indexOf("MSIE 6") != -1) IE6 = true;

    //--- Si IE6 : pas asynchrone
    if(IE6==true){
        asynchrone = 0;
    }


	var myAjax = new Ajax.Request(
      url,
      {
        method: 'get',
        asynchronous: asynchrone,
        parameters: 
        {
        	'origine': origine,
        	'categorie': form.elements['categorie'].value, 
        	'marque': form.elements['marque'].value, 
        	'modele': form.elements['modele'].value,
        	'annee': form.elements['annee'].value,
            
            'energie': form.elements['energie'].value, 
            'boite': form.elements['boite'].value, 
            'nbportes': form.elements['nbportes'].value,
            'chargeutile': form.elements['chargeutile'].value,
            
            'puissance': (form.elements['puissance'] ? form.elements['puissance'].value : null)
            
        },
        onSuccess: function (xhr)
        	{
        		
       			var data = xhr.responseText.evalJSON();
                
                
                var oldEnergie, indexOldEnergie;
                var oldBoite, indexOldBoite;
                var oldNbPortes, indexOldNbPortes;
                var oldChargeUtile, indexOldChargeUtile;
                var oldPuissance, indexOldPuissance;
                
                
                
				// Rafraichissement des select       
				if(origine == 'categorie')
				{
       				reloadSelect('marque', data.marques);
	       			reloadSelect('modele', data.modeles);
       				reloadSelect('annee', data.annees);

       				
       				// Si la catégorie BERLINE est choisie la liste nb de portes doit apparaitre
       				if(form.elements['categorie'].value == categorieBerline)
       				{
						$('div_nbportes').style.display='block';
       				}
       				else
       				{
						$('div_nbportes').style.display='none';
       				}
       				
       				// Si un UTILITAIRE est choisi le critère charges utiles doit apparaitre
       				if(form.elements['categorie'].value.substr(0, 2) == familleVU)
       				{
						$('div_chargeutile').style.display='block';
       				}
       				else
       				{
						$('div_chargeutile').style.display='none';
       				}
       				
       			}
				else if(origine == 'marque')
				{
	       			reloadSelect('modele', data.modeles);
       				reloadSelect('annee', data.annees);
	       		}	
				else if(origine == 'modele')
				{
       				reloadSelect('annee', data.annees);
       			}
                
                if (origine != 'energie')
                {
                    oldEnergie = $F('energie');
                    reloadSelect('energie', data.energies);
                    if ((indexOldEnergie = $A($('energie').options).pluck('value').indexOf(oldEnergie)) != -1)
                    {
                        $('energie').selectedIndex = indexOldEnergie;
                    }
                }
                
                
                if (origine != 'boite')
                {
                    oldBoite = $F('boite');
                    reloadSelect('boite', data.boites);
                    if ((indexOldBoite = $A($('boite').options).pluck('value').indexOf(oldBoite)) != -1)
                    {
                        $('boite').selectedIndex = indexOldBoite;
                    }
                }
                
                if (origine != 'nbportes')
                {
                    oldNbPortes = $F('nbportes');
                    reloadSelect('nbportes', data.nbportes);
                    if ((indexOldNbPortes = $A($('nbportes').options).pluck('value').indexOf(oldNbPortes)) != -1)
                    {
                        $('nbportes').selectedIndex = indexOldNbPortes;
                    }
                }
                
                if (origine != 'chargeutile')
                {
                    oldChargeUtile = $F('chargeutile');
                    reloadSelect('chargeutile', data.chargeutile);
                    if ((indexOldChargeUtile = $A($('chargeutile').options).pluck('value').indexOf(oldChargeUtile)) != -1)
                    {
                        $('chargeutile').selectedIndex = indexOldChargeUtile;
                    }
                }
                
                if (origine != 'puissance' && $('puissance'))
                {
                    oldPuissance = $F('puissance');
                    reloadSelect('puissance', data.puissances);
                    if ((indexOldPuissance = $A($('puissance').options).pluck('value').indexOf(oldPuissance)) != -1)
                    {
                        $('puissance').selectedIndex = indexOldPuissance;
                    }
                }
                
                
   				// Mise à jour des attributs disabled
   				majDisabledMoteurRechercheFichetechnique(form, origine);
   				
        	}
      });
}

// Mise à jour des attributs disabled des selects       				
function majDisabledMoteurRechercheFichetechnique(form, origine)
{
	if(origine == 'categorie')
	{
		form.elements['marque'].disabled = form.elements['categorie'].value.empty();
		form.elements['modele'].disabled = true;
		form.elements['annee'].disabled = true;
		form.elements['energie'].disabled = true;
		form.elements['boite'].disabled = true
		form.elements['nbportes'].disabled = true
		form.elements['chargeutile'].disabled = true
	}
	else if(origine == 'marque')
	{
		form.elements['modele'].disabled = form.elements['marque'].value.empty();
		form.elements['annee'].disabled = true;
		form.elements['energie'].disabled = true;
		form.elements['boite'].disabled = true
		form.elements['nbportes'].disabled = true
		form.elements['chargeutile'].disabled = true
	}
	else if(origine == 'modele')
	{
		form.elements['annee'].disabled = form.elements['modele'].value.empty();
		form.elements['energie'].disabled = true;
		form.elements['boite'].disabled = true
		form.elements['nbportes'].disabled = true
		form.elements['chargeutile'].disabled = true
	}
	else if(origine == 'annee')
	{
		form.elements['energie'].disabled = form.elements['annee'].value.empty();
		form.elements['boite'].disabled = form.elements['annee'].value.empty();
		form.elements['nbportes'].disabled = form.elements['annee'].value.empty();
		form.elements['chargeutile'].disabled = form.elements['annee'].value.empty();
	}
}

// Validation des champs du moteur de recherche
function validMoteurRechercheFichetechnique(form, msg)
{
	if(		form.elements['categorie'].value.empty() 
		||	form.elements['marque'].value.empty() 
		||	form.elements['modele'].value.empty() 
		||	form.elements['annee'].value.empty())
	{
		window.alert(msg);
	}
	else
	{
		form.submit();
	}
}

// Fiches techniques > Liste
// Mise à jour des sélecteurs quand le champ année change
function majMoteurRechercheListeFichetechnique(url, form)
{
	var myAjax = new Ajax.Request(
      url,
      {
        method: 'post',
        asynchronous: !/async=0/.test(window.location.search),
        parameters: 
        {
        	'categorie': form.elements['categorie'].value, 
        	'marque': form.elements['marque'].value, 
        	'modele': form.elements['modele'].value,
        	'annee': form.elements['annee'].value
        },
        onSuccess: function (xhr)
        	{
        		
       			var data = xhr.responseText.evalJSON();
   				reloadSelect('energie', data.energies);
   				reloadSelect('boite', data.boites);
   				reloadSelect('nbportes', data.nbportes);
   				reloadSelect('chargeutile', data.chargeutile);
   				reloadSelect('puissance', data.puissances);
        	}
      });
}

// Recharge une liste déroulante
function reloadSelect(selectName, datas)
{
	$(selectName).immediateDescendants().each(function (elt)
	{
		if (!elt.value.empty()) {$(elt).remove();}
	});
	datas.each(function (elt)
	{
		var longueur = $(selectName).options.length;
		$(selectName).options.length++;
		$(selectName).options[longueur].value = elt.c;
		$(selectName).options[longueur].text = elt.l;
	});
}

// Tri sur la liste des fiches
// tri = colonne sur laquelle l'utilisateur a cliqué
// form = objet formulaire "Affiner la recherche"
function triListeFichetechnique(tri, form)
{
	// On positionne les champs cachés de tri
	if(tri == form.elements['tri'].value)
	{
		// Cas de l'inversion de l'ordre
		if(form.elements['ordre'].value == 'asc')
		{
			form.elements['ordre'].value = 'desc';
		}
		else
		{
			form.elements['ordre'].value = 'asc';
		}
	}
	else
	{
		form.elements['tri'].value = tri;
		form.elements['ordre'].value = 'asc';
	}
	
	// On soumet le formulaire
	form.submit();
}



function ft_selectOpen(obj,fam,crit,dependCrit) {
		
		id = dependCrit+fam;
		
		if(!dependCrit || $(id).present()){
			var object = $(obj).toggle();
			if(object.visible()){
				if(DeposeClass.lastSelectOpen != null)
					DeposeClass.lastSelectOpen.hide();
					DeposeClass.lastSelectOpen = object;
			}
			else{
				DeposeClass.lastSelectOpen = null;
			}
		}
		else{
			return false
		}

}



function ft_selectLi(obj, valeur, validation) {

        objet = $(obj).up(3);
        objet.style.display = 'none';
        objet.parentNode.getElementsByTagName('input')[0].value = valeur;
        objet.parentNode.getElementsByTagName('strong')[0].innerHTML = obj.innerHTML;
        DeposeClass.lastSelectOpen = null;
		
		tab = valeur.split('_');
		idChamp = tab[1]+tab[2];
		valSelect = tab[0];
		$(idChamp).value = valSelect;
		
		// if((validation == undefined) || (validation == true) ){
			// Validation.validate($(objet.parentNode.getElementsByTagName('input')[0]));
		// }
			
}


function verifFormulaireFT(fam) {
	
	var listeCritObligatoires = [
	"r2|La marque que vous avez saisie est invalide",
	"md|Le modèle que vous avez saisi est invalide",
	"r1|Le type de carrosserie que vous avez saisi est invalide",
	"a0|L’année que vous avez saisie est invalide"
	];
	
	flagError = false;
	
	listeCritObligatoires.each(function (elt){
		
		tabCrit = elt.split('|');
		crit = tabCrit[0];
		msg = tabCrit[1];
		if(!$(crit+fam).present()) {
			$('err_msg_FT'+crit+fam).style.display = "";
			$('err_FT'+crit+fam).className = "invalid";
			$('cnt_FT'+crit+fam).style.height = "40px";
			$('err_msg_cnt_FT'+crit+fam).innerHTML = msg;
			
			flagError = true;
			
		}
		
	});
	
	if(!flagError){
		$('recherche'+fam).submit();
	}

}



var gestionSelectDynamique = function (val,crit,critOrigine,fam){		
   if (crit != "")
   	{
   		modele = $F('md'+fam);
		zindex = '';
   		if($('zindex_'+crit)) zindex = parseInt($('zindex_'+crit).value) + 1; 
   		var ajaxSelectDynamique = new Ajax.Request(
   	      urlGestionSelectDynamique,
   	      {
   	        method: 'post',
   	        asynchronous: false,
   	        parameters: {'val': val, 'crit': crit, 'critOrigine': critOrigine, 'zindex': zindex,'famille':fam,'modele':modele},
   	        onSuccess: afficheSelect
   	      });
   	}
}; // gestionSelectDynamique


var afficheSelect = function (xhr){

    if(xhr.responseText!=''){
		try {
			var reponse = xhr.responseText;
			var crit 		= xhr.request.parameters.crit;
			var val 		= xhr.request.parameters.val;
			var fam 		= xhr.request.parameters.famille;
			
			document.getElementById('div_'+crit+fam).innerHTML = reponse;
			
		} catch (e) {
		}
	}

}; // afficheZone


function getTriListe(champTri) {

	urlCrypt = $F('urlTri');
	url = Rot13.decode(urlCrypt);
		
	if(champTri == $F('tri')){
		sensTri = $F('sens');
	}
	else{
		sensTri = 'asc';
	}
	
	window.location.href = url+'&sens='+sensTri+'&tri='+champTri;

}

function getURL(url) {
	
	window.location.href = url;

}


function FTverifForm1(){
	$('err_msg_FTr2VO').style.display = "";
	$('err_FTr2VO').className = "invalid";
	$('cnt_FTr2VO').style.height = "40px";
	
	$('err_msg_FTmodeleVO').style.display = "";
	$('err_FTmodeleVO').className = "invalid";
	$('cnt_FTmodeleVO').style.height = "40px";
	
	$('err_msg_FTcarrosserieVO').style.display = "";
	$('err_FTcarrosserieVO').className = "invalid";
	$('cnt_FTcarrosserieVO').style.height = "40px";
	
	$('err_msg_FTanneVO').style.display = "";
	$('err_FTanneVO').className = "invalid";
	$('cnt_FTanneVO').style.height = "40px";
}


function FTverifForm2(){

	$('err_msg_FTmarqueUTIL').style.display = "";
	$('err_FTmarqueUTIL').className = "invalid";
	$('cnt_FTmarqueUTIL').style.height = "40px";
	
	$('err_msg_FTmodeleUTIL').style.display = "";
	$('err_FTmodeleUTIL').className = "invalid";
	$('cnt_FTmodeleUTIL').style.height = "40px";
	
	$('err_msg_FTcarrosserieUTIL').style.display = "";
	$('err_FTcarrosserieUTIL').className = "invalid";
	$('cnt_FTcarrosserieUTIL').style.height = "40px";
	
	$('err_msg_FTanneUTIL').style.display = "";
	$('err_FTanneUTIL').className = "invalid";
	$('cnt_FTanneUTIL').style.height = "40px";
	
}


function ctlCP(obj) {		
	
	if(document.getElementById('autoCodePostal').value.length != 5 ||  !estUnNombre(document.getElementById('autoCodePostal').value) )
	{ 
		document.getElementById('opap_cp_erreur').style.display = 'block';
	}
	else
	{
		document.offrePAP.submit();
	}
	
}


function estUnNombre (pChaine) {
   var exp = new RegExp("^[0-9-.]*$","g");
   return exp.test(pChaine);
}

function movefromcrypt(link)
{
	url = Rot13.decode(link);
	window.location.href=url;
}


