
// Recharge le document "publication.php" en fonction avec les nouvelles 
// valeur du formulaire
// 
// TODO : réécrire pour rendre générique en recherchant les éléments 
//        contenat à partir dune liste de variable QUERY
// TODO : idéé d'amélioration
// - lire l'url courant, 
//    si "?" not un url ajouter "?"  sinon ajouter "&amp;"
// - la variable et valeur do 'onchange'
//   ajouter "var=" + var
// 
function updatePublisChooser() {
   // Le formulaire qui nous intéresse
   // var theForm=document.forms["selectPublisForm"];
   // var f = document.publisChooser;
   var f = document.getElementById("publisChooser");
   
   var typesSet =   f.typesSet.options[f.typesSet.selectedIndex].value;
   var membersSet = f.membersSet.options[f.membersSet.selectedIndex].value;
   var opYear =     f.opYear.options[f.opYear.selectedIndex].value;
   var refYear =    f.refYear.options[f.refYear.selectedIndex].value;
   var sortBy =     f.sortBy.options[f.sortBy.selectedIndex].value;
   var outFormat =  f.outFormat.options[f.outFormat.selectedIndex].value;
   
   var url="publication.php?"
           + "typesSet="    + typesSet 
           + "&membersSet=" + membersSet 
           + "&opYear="     + opYear 
           + "&refYear="    + refYear 
           + "&sortBy="     + sortBy 
           + "&outFormat="  + outFormat 
           ;
   top.status += " url="+url;
   location=url;
}
// 
// Recharge le document "annuaire.php" en fonction avec les nouvelles 
// valeur du formulaire
// 
function updateMembersChooser() {
   // var f = document.membersChooser;
   var f = document.getElementById("membersChooser");
      
   var membersSet = f.membersSet.options[f.membersSet.selectedIndex].value;
   var sortBy =     f.sortBy.options[f.sortBy.selectedIndex].value;
   // var showPhoto =  f.showPhoto.checked;
   var vue =        f.vue.options[f.vue.selectedIndex].value;
   
   var url="annuaire.php?membersSet=" + membersSet 
                     + "&sortBy=" + sortBy 
                     + "&vue=" + vue ;
                     // + "&showPhoto="  + showPhoto ;    
   // alert(" url="+url);    
   top.status += " url="+url;
   location=url;
}
// 
// Soumet le formulaire de la liste IMA des membres
// 
function updateMembersImaChooser(url) {
   var f = document.getElementById("membersChooser");
      
   var set =       f.set.options[f.set.selectedIndex].value;
   var sort_by =   f.sort_by.options[f.sort_by.selectedIndex].value;
   var sort_dir =  f.sort_dir.options[f.sort_dir.selectedIndex].value;
   var vue =       f.vue.options[f.vue.selectedIndex].value;
   
   var url = url + "&set=" + set 
                 + "&sort_by=" + sort_by 
                 + "&sort_dir=" + sort_dir 
                 + "&vue=" + vue ;
                 // + "&showPhoto="  + showPhoto ;    
   // alert(" url="+url);    
   top.status += " url="+url;
   location=url;
}
// 
// Soumet le formulaire de la liste IMA des publis
// 
function updatePublisImaChooser(url) {
   var f = document.getElementById("publisChooser");
      
   var types_set =   f.types_set.options[f.types_set.selectedIndex].value;
   var members_set = f.members_set.options[f.members_set.selectedIndex].value;
   var op_year =     f.op_year.options[f.op_year.selectedIndex].value;
   var ref_year =    f.ref_year.options[f.ref_year.selectedIndex].value;
   var sort_by =     f.sort_by.options[f.sort_by.selectedIndex].value;
   var sort_dir =    f.sort_dir.options[f.sort_dir.selectedIndex].value;
   var vue =         f.vue.options[f.vue.selectedIndex].value;
   
   var url = url + "&types_set="   + types_set 
                 + "&members_set=" + members_set 
                 + "&op_year="     + op_year 
                 + "&ref_year="    + ref_year 
                 + "&sort_by="     + sort_by 
                 + "&sort_dir="    + sort_dir 
                 + "&vue="         + vue ;
   top.status += " url="+url;
   location=url;
   
}

// TODO en cours de mise au point
// 
// Recharge le document courant, en passant les informations contenues dans le 
// formulaire
// f : l'objet formulaire
// 
// Exemple :
//  
function updateChooser(f) {
   // var f = document.getElementById("membersChooser");
   
   // 1 - extraire le nom de base du document (complet, avec les params 
   //     éventuels)
   // 2 - construire les tableaux de tous les champs, et de leur valeur courante
   // 2bis - (facultatif) supprimer de l'URL courantes les anciens parametres 
   //        que l'on va mettre à jour (sinon l'url va s'allonger chaque fois
   //        que l'on rappelle cette méthode !)
   // 3 - ajouter à l'url d'origine, les nouvelles options
   // 
   // La difficulté : tester les cas où un champs est un select, voire un
   // select multiple !
   // 
   msg = "Méthode updateChooser(form) pas encore implémentée !";
   alert(msg);
}
// Idée de google
/// function checkForm( form ) {
///     var numElement = form.length;
///     for (var i=0; i<numElement; i++) {
///         var ele = form.elements[i];
///         var eleName = ele.name;
///         var eleType = ele.type;
///         var eleVal      = ele.value;
///         var eleClass = ele.className;
/// 
///         if (eleClass == "require") {
///             if (ieleType =="text" || eleType=="textarea" || eleType=="password") {
///                 if (eleVal == "" ) {
///                     ele.focus();
///                     //alert(eleClass);
///                     return false ;
///                 }
///             }
///         }
///     }
///     return true ;
/// }
// 
/// function submitForm( form , processUrl) {
///     var para = '';
/// 
///     if (checkForm(form)) {
///             var numElement = form.length;
///             for (var i=0; i<numElement; i++) {
///                     var ele = form.elements[i];
///                     var eleName = ele.name;
///                     var eleType = ele.type;
///                     var eleVal  = ele.value;
/// 
///                     if (eleType == "text")
///                         para += eleName +": "+ eleVal+",";
///             }
///             new Ajax.Updater("", processUrl, {parameters: { parameters:para}});
///             return true;
///     }
///     return false;
/// }

//
//./

