From 632b88d5a27542acc4019e9d884426dbfb4e01bb Mon Sep 17 00:00:00 2001 From: jamiesensei Date: Fri, 6 Apr 2007 06:01:11 +0000 Subject: [PATCH] see MDL-8886. fixes bug that meant : $mform->disabledIf('studentfeedbackurl', 'studentfeedback', 'eq', 0); $mform->disabledIf('studentfeedbackurl', 'studentfeedback', 'eq', 3); $mform->disabledIf('studentfeedbackurl', 'studentfeedback', 'eq', 4); didn't work. --- lib/javascript-static.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/javascript-static.js b/lib/javascript-static.js index 7c459942a7..81d323d734 100644 --- a/lib/javascript-static.js +++ b/lib/javascript-static.js @@ -86,6 +86,7 @@ function unlockoption(form,item) { 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 @@ function lockoptionsall(formid) { 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; } -- 2.39.5