Index: lib/javascript-static.js =================================================================== RCS file: /cvsroot/moodle/moodle/lib/javascript-static.js,v retrieving revision 1.30 diff -u -r1.30 javascript-static.js --- lib/javascript-static.js 30 Mar 2007 21:15:39 -0000 1.30 +++ lib/javascript-static.js 3 Apr 2007 15:52:32 -0000 @@ -86,6 +86,7 @@ function lockoptionsall(formid) { var form = document.forms[formid]; var dependons = eval(formid+'items'); + var tolock = Array(); for (var dependon in dependons) { var master = form[dependon]; for (var condition in dependons[dependon]) { @@ -104,12 +105,21 @@ lock = master.value!=value; break; } for (var ei in dependons[dependon][condition][value]) { - var formelement = form[dependons[dependon][condition][value][ei]]; - formelement.disabled = lock; + var eltolock = dependons[dependon][condition][value][ei]; + if (tolock[eltolock] != null){ + tolock[eltolock] = + lock || tolock[eltolock]; + } else { + tolock[eltolock] = lock; + } } } } } + for (var el in tolock){ + var formelement = form[el]; + formelement.disabled = tolock[el]; + } return true; }