/** * empty a SELECT field given its name and default option * call example : emptySelectOptions("#MaterielSousCategorieId","Choisir une sous-catégorie") * */ function emptySelectOptions(selectFieldId, defaultOption) { var newOptions = { "" : defaultOption }; //var selectedOption = "Choisir une sous-catégorie"; var select = $(selectFieldId); var options; if(select.prop) { options = select.prop("options"); } else { options = select.attr("options"); } $("option", select).remove(); $.each(newOptions, function(val, text) { options[options.length] = new Option(text, val); }); //select.val(selectedOption); } /** * Ajax request that updates a SELECT options (selectId) according to the selection made in another SELECT (otherSelectId) * For now, works only from Materiels VIEW (otherwise, replace "materiels" below with your view name) * * call example : * updateSelectOptionsFromAnother("#MaterielCategorieId", "#MaterielSurCategorieId", "Categories/getAll", "catégorie") * This would update the options of the SELECT named "MaterielCategorieId" from the selected value of the SELECT named MaterielSurCategorieId * */ function updateSelectOptionsFromAnother(selectId, otherSelectId, requestName, emptyOptionName) { var reg=new RegExp("(materiels).*$","g"); var currentURL = window.location.pathname; var newURL = currentURL.replace(reg, requestName); $.ajax({ async:true, data:$(otherSelectId).serialize(), dataType:"html", success:function (data, textStatus) { if (emptyOptionName == "") $(selectId).val(data); else { data=""+data; $(selectId).html(data); } }, type:"post", url:newURL }); } $(document).ready(function() { //Page index de matériel $('#t_informations').click(function() { $('#informations').toggle('fast'); toogleChevron('#i_informations'); }); $('#t_informations_admin').click(function() { $('#informations_admin').toggle('fast'); toogleChevron('#i_informations_admin'); }); $('#t_suivis').click(function() { $('#suivis').toggle('fast'); toogleChevron('#i_suivis'); }); $('#t_emprunts').click(function() { $('#emprunts').toggle('fast'); toogleChevron('#i_emprunts'); }); $('#t_fichiers').click(function() { $('#fichiers').toggle('fast'); toogleChevron('#i_fichiers'); }); //Page find de matériel $('#t_filter').click(function() { $('#filter').toggle('fast'); toogleChevron('#i_filter'); }); $('#t_result').click(function() { $('#result').toggle('fast'); toogleChevron('#i_result'); }); }); function toogleChevron(element) { if ($(element).hasClass('icon-chevron-down')) { $(element).removeClass('icon-chevron-down'); $(element).addClass('icon-chevron-up'); } else { $(element).removeClass('icon-chevron-up'); $(element).addClass('icon-chevron-down'); } } function emprunt_interne_externe() { $('#interne').toggle(); $('#externe').toggle(); } function display_ldap() { $('#ldap').toggle(); //toggle_ldap_auth(); } // EP function toggle_ldap_auth() { //$('#ldap_auth').toggle(); // Possible en une ligne, mais moins lisible... //document.getElementById("ldap_auth").style.display = document.getElementById("ldap-authentified").checked ? "block":"none"; var ldap_auth_div = document.getElementById("ldap_auth"); var ldap_auth_checkbox = document.getElementById("ldap-authentified"); ldap_auth_div.style.display = ldap_auth_checkbox.checked ? "block":"none"; } function selectAll() { for(i = 0; i < document.getElementsByTagName("input").length; i++) document.getElementsByTagName("input")[i].checked = true; } function selectNone() { for(i = 0; i < document.getElementsByTagName("input").length; i++) document.getElementsByTagName("input")[i].checked = false; } /*Je ne saurais expliquer pourquoi mais cela ne fonctionne pas si les modifications sont faites directement dans ce fichier //changement d'emplacement de la fonction qui étais dans script car apparement je ne peux pas la modifier //si je vais modifier directement le fichier script.js - permet d'afficher les infos administrative //après checkbox checked function changeAdminEdit() { <<<<<<< HEAD if (document.getElementById('eotp').disabled) { document.getElementById('eotp').disabled=false; document.getElementById('numero-commande').disabled=false; document.getElementById('code-comptable').disabled=false; document.getElementById('numero-inventaire-organisme').disabled=false; document.getElementById('numero-inventaire-old').disabled=false; document.getElementById('num_labo').disabled=false; ======= if (document.getElementById('eotp').disabled) { document.getElementById('eotp').disabled=false; document.getElementById('numero-commande').disabled=false; document.getElementById('code-comptable').disabled=false; document.getElementById('numero-inventaire-organisme').disabled=false; document.getElementById('numero-inventaire-old').disabled=false; } else { document.getElementById('eotp').disabled=true; document.getElementById('numero-commande').disabled=true; document.getElementById('code-comptable').disabled=true; document.getElementById('numero-inventaire-organisme').disabled=true; document.getElementById('numero-inventaire-old').disabled=true; } } //Permet d'afficher les infos administrative plus après checkbox checked function changeAdminEditPlus() { if (document.getElementById('nom-createur').disabled) { document.getElementById('nom-createur').disabled=false; document.getElementById('nom-modificateur').disabled=false; document.getElementById('created').disabled=false; document.getElementById('modified').disabled=false; >>>>>>> branch 'dev' of https://gitlab.irap.omp.eu/epallier/labinvent.git } else { <<<<<<< HEAD document.getElementById('eotp').disabled=true; document.getElementById('numero-commande').disabled=true; document.getElementById('code-comptable').disabled=true; document.getElementById('numero-inventaire-organisme').disabled=true; document.getElementById('numero-inventaire-old').disabled=true; document.getElementById('num_labo').disabled=true; ======= document.getElementById('nom-createur').disabled=true; document.getElementById('nom-modificateur').disabled=true; document.getElementById('created').disabled=true; document.getElementById('modified').disabled=true; >>>>>>> branch 'dev' of https://gitlab.irap.omp.eu/epallier/labinvent.git } } Récupérer les id en début de fonction permet de rendre la fonction plus lisible Mais plus longue aussi function changeAdminEdit() { var idCheck =document.getElementById('adminEdit'); var idEotp =document.getElementById('eotp'); var idCommande=document.getElementById('numero-commande'); var idComptable = document.getElementById('code-comptable'); var idOrganisme = document.getElementById('numero-inventaire-organisme'); var idOld = document.getElementById('numero-inventaire-old'); if (idEotp.disabled) { idEotp.disabled=false; idCommande.disabled=false; idComptable.disabled=false; idOrganisme.disabled=false; idOld.disabled=false; } else { idEotp.disabled=true; idCommande.disabled=true; idComptable.disabled=true; idOrganisme.disabled=true; idOld.disabled=true; } }*/