/* Attention : les champs select (pour tout ce qui est sous secteur et sous pays) où le choix est égal à 1 sont placés à hidden dans le processus ce qui engendre qu'il ne sont pas passés au formulaire de recherche. Mettre en place une structure d'activation de champs input à vider le cas échéant */ function initSearchForm(){ } function FillInActiviteBySecteur(){ Init_Activite('activite'); var idsecteur = $F('secteur'); if (idsecteur != ''){ new Ajax.Request('inc_ajax/action_activites.php',{ evalScripts:true, parameters: '&action=FillInSelectActiviteBySecteur&idsecteur=' + idsecteur, onComplete: function(transport){ var response = eval(transport.responseText); if (response.length > 1){ $('activiteTr').show(); response.each(function(s){ $('activite').insert({bottom:''}); $('activite').options[0].selected = true; }); } else{ $('activiteTd').update(); $('search_bat_form').insert({top:''}); } } }); } } function SelectAllActivites(){ alert('not yet'); } function resetSearchForm(){ $('activite').update(''); $('specificActivity').update(''); $('specificOrientation').update(''); $('specificMatiere').update(''); $('specificLangue').update(''); $('specificInfoComp').update(''); Init_Localisation('communaute'); Init_Localisation('region'); Init_Localisation('province'); Init_Localisation('localite'); } function resetSpecificOptions(){ $('activite').update(''); $('specificActivity').update(''); $('specificOrientation').update(''); $('specificMatiere').update(''); $('specificLangue').update(''); $('specificInfoComp').update(''); } function stopObservers(){ $('moreoptionsInput').stopObserving('click',FillInSpecificActivite); $('lessoptionsInput').stopObserving('click',ToggleMoreOptions); $('lessoptionsInput').stopObserving('click',resetSpecificOptions); $('communaute').stopObserving('change',FillInSpecificActivite); } function InitMoreOptions(){ if ($('moreoptionsTr').visible()){ $('moreoptionsTr').hide(); } if ($('lessoptionsTr').visible()){ $('lessoptionsTr').hide(); } } function ToggleMoreOptions(){ $('moreoptionsTr').toggle(); $('lessoptionsTr').toggle(); } function CheckSpecificActivite(){ var id_secteur = $F('secteur'); var id_langue = $F('id_langue'); stopObservers(); resetSearchForm(); InitMoreOptions(); new Ajax.Request('inc_specificActivity.php',{ evalScripts:true, parameters: '&action=getspecific&id_secteur=' + id_secteur + '&id_langue='+ id_langue, onComplete: function(transport){ var result = transport.responseText; if (result == 'enseignement') { if ($F('pays') == ''){ resetSearchForm(); return; } else{ $('moreoptionsTr').show(); $('moreoptionsInput').observe('click', FillInSpecificActivite.bindAsEventListener(result), false); FillInCommunauteByPays(result); $('communaute').observe('change', InitCommunaute.bindAsEventListener(result), false); } } else{ //FillInActiviteBySecteur(); } } }); } function InitCommunaute(){ myobj = this; if ($('lessoptionsTr').visible()){ FillInSpecificActivite(myobj); } } function FillInSpecificActivite(obj){ if (this != window) { myobj = this; } else if(obj != undefined) { myobj = obj; } stopObservers(); resetSpecificOptions(); $('moreoptionsTr').hide(); $('lessoptionsTr').show(); $('lessoptionsInput').observe('click', ToggleMoreOptions, false); $('lessoptionsInput').observe('click', resetSpecificOptions, false); if (myobj == 'enseignement'){ // ENSEIGNEMENT $('activiteTr').hide(); var id_secteur = $F('secteur'); var id_langue = $F('id_langue'); var id_pays = $F('pays'); var id_region = $F('region'); var id_province = $F('province'); var localite = $F('localite'); var id_communaute = ''; if ($('communaute')){ id_communaute = $F('communaute'); } if ($F('pays') != ''){ FillInCommunauteByPays(myobj); } $('action').value = myobj; // Pour l'envoi à inc_specificActivity.php et le remplissage des activités spécifiques $('action2').value = 'activity'; new Ajax.Updater('specificActivity', 'inc_specificActivity.php',{ asynchronous: false, evalScripts:true, parameters: $('search_bat_form').serialize(true), onComplete : function(){ } }); $('action2').value = 'orientation'; new Ajax.Updater('specificOrientation', 'inc_specificActivity.php',{ evalScripts:true, parameters: $('search_bat_form').serialize(true), onComplete : function(){ } }); new Ajax.Updater('specificMatiere', 'inc_specificActivity.php',{ evalScripts:true, parameters: '&action=enseignement&action2=matiere&langue=' +id_langue, onComplete : function(){ } }); new Ajax.Updater('specificLangue', 'inc_specificActivity.php',{ evalScripts:true, parameters: '&action=enseignement&action2=langue&langue=' +id_langue, onComplete : function(){ } }); new Ajax.Updater('specificInfoComp', 'inc_specificActivity.php',{ evalScripts:true, parameters: '&action=enseignement&action2=infocomp&langue=' +id_langue, onComplete : function(){ } }); } } function Init_Activite(obj){ if (obj == 'activite'){ $('activiteTd').update(''); if ($('activite')){$('activite').remove();} $('activiteTr').hide(); $('activiteTd').update(''); } } function Init_Localisation(obj){ if (obj == 'region'){ if ($('pays').localName != 'input') { $('regionTd').update(''); if ($('region')){$('region').remove();} $('regionTr').hide(); $('regionTd').update(''); } $('provinceTd').update(''); if ($('province')){$('province').remove();} $('provinceTr').hide(); $('provinceTd').update(''); $('localiteTd').update(''); if ($('localite')){$('localite').remove();} $('localiteTr').hide(); $('localiteTd').update(''); } else if(obj == 'province'){ $('provinceTd').update(''); if ($('province')){$('province').remove();} $('provinceTr').hide(); $('provinceTd').update(''); $('localiteTd').update(''); if ($('localite')){$('localite').remove();} $('localiteTr').hide(); $('localiteTd').update(''); } else if(obj == 'localite'){ $('localiteTd').update(''); if ($('localite')){$('localite').remove();} $('localiteTr').hide(); $('localiteTd').update(''); } } function FillInCommunauteByPays(myobj){ if ($('communaute')){ var communaute = $F('communaute'); $('communaute').update(''); } var idpays = $F('pays'); if (idpays != null){ new Ajax.Request('inc_ajax/action_localisation.php',{ asynchronous: false, evalScripts:true, parameters: '&action=FillInSelectCommunauteByPays&idpays=' + idpays, onComplete: function(transport){ var response = eval(transport.responseText); if (response.length > 1){ $('communauteTr').show(); response.each(function(s){ if (s[0] != communaute){ var checked = true; } $('communaute').insert({bottom:''}); }); if (checked = true){ $('communaute').value = communaute; } // $('communaute').observe('change', FillInSpecificActivite.bindAsEventListener(myobj), false); } else{ $('communauteTr').hide(); $('communaute').stopObserving('change',FillInSpecificActivite); } } }); } } function FillInRegionByPays(){ if ($('pays').localName != 'input') { Init_Localisation('region'); } var idpays = $F('pays'); if (idpays != ''){ new Ajax.Request('inc_ajax/action_localisation.php',{ evalScripts:true, parameters: '&action=FillInSelectRegionByPays&idpays=' + idpays, onComplete: function(transport){ var response = eval(transport.responseText); if (response.length > 1){ $('regionTr').show(); response.each(function(s){ $('region').insert({bottom:''}); $('region').options[0].selected = true; $('region').observe('change',FillInProvinceByRegion,false); }); } else{ $('regionTd').update(); $('search_bat_form').insert({top:''}); FillInProvinceByRegion(); } } }); } else{ $('communauteTr').hide(); } } function FillInProvinceByRegion(){ if ($('region').localName != 'input') { Init_Localisation('province'); } var idregion = $F('region'); new Ajax.Request('inc_ajax/action_localisation.php',{ evalScripts:true, parameters: '&action=FillInSelectProvinceByRegion&idregion=' + idregion, onComplete: function(transport){ var response = eval(transport.responseText); if (response.length > 1){ $('provinceTr').show(); response.each(function(s){ $('province').insert({bottom:''}); $('province').options[0].selected = true; $('province').observe('change',FillInLocaliteByProvince,false); }); } else{ $('provinceTd').update(); $('search_bat_form').insert({top:''}); FillInLocaliteByProvince(); } } }); } function FillInLocaliteByProvince(){ if ($('province').localName != 'input') { Init_Localisation('localite'); } var id_province = $F('province'); new Ajax.Request('inc_ajax/action_localisation.php',{ evalScripts:true, parameters: '&action=FillInSelectCodePostalByProvince&id_province=' + id_province, onComplete: function(transport){ var response = eval(transport.responseText); if(response.length > 1){ $('localiteTr').show(); response.each(function(s){ $('localite').insert({bottom:''}); $('localite').options[0].selected = true; }); } else{ $('localiteTd').update(); $('search_bat_form').insert({top:''}); // INSERTION DU SCRIPT CONTINUE SI BRIDAGE SUR UNE SEULE LOCALITE } } }); } function search_gestbat_result(){ if ($('profil_select')){ if ($F('profil_select') == $F('profil_id_Check_Changed')){ search_gestbat_result_execute(); } } else{ search_gestbat_result_execute(); } } var bridage = ''; function search_gestbat_result_execute(){ /* new Ajax.Request('inc_ajax/search_getbridage.php',{ evalScripts : true, parameters : '&action=getbridage', onComplete : function(transport){ var response = transport.responseText.evalJSON(true); bridage = response; //alert(bridage.bridage); // ATTENTION : Le formulaire se comporte comme suit: // pour les champs de localisation, si une seule valeur est trouvée, elle n'apparaît pas dans le formulaire. // Il est faut donc vérifier pour chaque champs désiré // pays, communauté, région, province, localite, secteur // s'il est présent avant de valider la recherche if (bridage.bridage == true){ alert(bridage.releveur.length); } } }); */ // impératifs d'information avant la recherch // le pays et le secteur sont toujours actifs même si pas présents sur le formulaire (champs hidden) if ($('profil_select')){ if ($F('pays') != '' && $F('secteur') != '' && $('region') && $('province') && $('localite')){ if ($F('region') != '' && $F('province') != '' && $F('localite') != ''){ new Ajax.Request('inc_ajax/search_gestbat_result.php', { parameters : $('search_bat_form').serialize(true), onCreate : function(){ $('result_search').update(trad['veuillezpatienter']+' '); }, onComplete : function(transport){ var response = transport.responseText; $('result_search').update(response+' '+trad['resultat']); $('submitSearch').enable(); /* if($F('pays') != '' || ($F('profil_select') == $F('profil_id_Check_Changed'))){ var response = transport.responseText; $('result_search').update(response+' '+trad['resultat']); } else{ $('result_search').update(''); } */ } }); } else{ $('result_search').update(trad['searchprecisionforprofile']); $('submitSearch').disable(); } } else{ $('result_search').update(trad['searchprecisionforprofile']); $('submitSearch').disable(); } } else{ //recherche sans profil if ($F('pays') != '' && $F('secteur') != '' && $('region')){ if ($F('region') != ''){ new Ajax.Request('inc_ajax/search_gestbat_result.php', { parameters : $('search_bat_form').serialize(true), onCreate : function(){ $('result_search').update(trad['veuillezpatienter']+' '); }, onComplete : function(transport){ var response = transport.responseText; $('result_search').update(response+' '+trad['resultat']); $('submitSearch').enable(); /* if($F('pays') != '' || ($F('profil_select') == $F('profil_id_Check_Changed'))){ var response = transport.responseText; $('result_search').update(response+' '+trad['resultat']); } else{ $('result_search').update(''); } */ } }); } else{ $('result_search').update(trad['searchprecision']); $('submitSearch').disable(); } } else{ $('result_search').update(trad['searchprecision']); $('submitSearch').disable(); } } } function search_gestbat_result_from_profil(){ new Ajax.Updater($('batiment_expertise_by_profil'),'batiment_profil_expertise.php', { parameters : $('get_bat_from_profil_form').serialize(true), evalScripts: true, onCreate : function(){ $('batiment_expertise_by_profil').update(trad['veuillezpatienter']+' '); }, onComplete : function(){ $('profil_select_2').stopObserving('change',profil_search_update_for_bat); $('get_bat_from_profil_form').observe('change', search_gestbat_result_from_profil, false); } }); } function submitSearch(){ /* new Ajax.Updater('Content', 'search_gestbat_result.php',{ evalScripts:true, parameters: $('search_bat_form').serialize(true), onComplete : function(){ } }); */ }