MDL-10408 - added checks for propertyIsEnumerable for MooTools compatibility

This commit is contained in:
urs_hunkler
2007-08-05 12:15:27 +00:00
parent 48bfa2e0c9
commit d63ef3b83b

View File

@ -88,8 +88,12 @@ function lockoptionsall(formid) {
var dependons = eval(formid+'items');
var tolock = Array();
for (var dependon in dependons) {
// change for MooTools compatibility
if (!dependons.propertyIsEnumerable(dependon)) {
continue;
}
var master = form[dependon];
if (master == undefined) {
if (master === undefined) {
continue;
}
for (var condition in dependons[dependon]) {
@ -108,6 +112,10 @@ function lockoptionsall(formid) {
lock = master.value!=value; break;
}
for (var ei in dependons[dependon][condition][value]) {
// change for MooTools compatibility
if (!window.webkit && (!dependons[dependon][condition][value].propertyIsEnumerable(ei))) {
continue;
}
var eltolock = dependons[dependon][condition][value][ei];
if (tolock[eltolock] != null){
tolock[eltolock] =
@ -120,8 +128,12 @@ function lockoptionsall(formid) {
}
}
for (var el in tolock){
// change for MooTools compatibility
if (!tolock.propertyIsEnumerable(el)) {
continue;
}
var formelement = form[el];
if (formelement == undefined) {
if ((formelement === undefined) || (formelement.disabled === undefined)) {
continue;
}
formelement.disabled = tolock[el];
@ -133,8 +145,12 @@ function lockoptionsallsetup(formid) {
var form = document.forms[formid];
var dependons = eval(formid+'items');
for (var dependon in dependons) {
// change for MooTools compatibility
if (!dependons.propertyIsEnumerable(dependon)) {
continue;
}
var master = form[dependon];
if (master == undefined) {
if (master === undefined) {
continue;
}
master.formid = formid;