Skip to content

Commit b6b27a3

Browse files
committed
netteForms: removed support for IE < 9, Nette.inArray(), Nette.isArray()
1 parent 0425a4e commit b6b27a3

File tree

1 file changed

+15
-46
lines changed

1 file changed

+15
-46
lines changed

src/assets/netteForms.js

Lines changed: 15 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@
184184
continue;
185185
}
186186
if (!onlyCheck) {
187-
var arr = Nette.isArray(rule.arg) ? rule.arg : [rule.arg],
187+
var arr = Array.isArray(rule.arg) ? rule.arg : [rule.arg],
188188
message = rule.msg.replace(/%(value|\d+)/g, function(foo, m) {
189189
return Nette.getValue(m === 'value' ? curElem : elem.form.elements.namedItem(arr[m].control));
190190
});
@@ -291,7 +291,7 @@
291291
var elem = errors[i].element,
292292
message = errors[i].message;
293293

294-
if (!Nette.inArray(messages, message)) {
294+
if (messages.indexOf(message) < 0) {
295295
messages.push(message);
296296

297297
if (!focusElem && elem.focus) {
@@ -324,7 +324,7 @@
324324
op = op.replace('::', '_');
325325
op = op.replace(/\\/g, '');
326326

327-
var arr = Nette.isArray(arg) ? arg.slice(0) : [arg];
327+
var arr = Array.isArray(arg) ? arg.slice(0) : [arg];
328328
if (!preventFiltering) {
329329
preventFiltering = true;
330330
for (var i = 0, len = arr.length; i < len; i++) {
@@ -336,7 +336,7 @@
336336
preventFiltering = false;
337337
}
338338
return Nette.validators[op]
339-
? Nette.validators[op](elem, Nette.isArray(arg) ? arr : arr[0], value.value, value)
339+
? Nette.validators[op](elem, Array.isArray(arg) ? arr : arr[0], value.value, value)
340340
: null;
341341
};
342342

@@ -347,7 +347,7 @@
347347
return true;
348348
}
349349
return val !== '' && val !== false && val !== null
350-
&& (!Nette.isArray(val) || !!val.length)
350+
&& (!Array.isArray(val) || !!val.length)
351351
&& (!window.FileList || !(val instanceof window.FileList) || val.length);
352352
},
353353

@@ -372,8 +372,8 @@
372372
}
373373
}
374374

375-
val = Nette.isArray(val) ? val : [val];
376-
arg = Nette.isArray(arg) ? arg : [arg];
375+
val = Array.isArray(val) ? val : [val];
376+
arg = Array.isArray(arg) ? arg : [arg];
377377
loop:
378378
for (var i1 = 0, len1 = val.length; i1 < len1; i1++) {
379379
for (var i2 = 0, len2 = arg.length; i2 < len2; i2++) {
@@ -420,7 +420,7 @@
420420
return null;
421421
}
422422
}
423-
arg = Nette.isArray(arg) ? arg : [arg, arg];
423+
arg = Array.isArray(arg) ? arg : [arg, arg];
424424
return (arg[0] === null || val.length >= arg[0]) && (arg[1] === null || val.length <= arg[1]);
425425
},
426426

@@ -532,7 +532,7 @@
532532
return null;
533533
}
534534
}
535-
return Nette.isArray(arg) ?
535+
return Array.isArray(arg) ?
536536
((arg[0] === null || parseFloat(val) >= arg[0]) && (arg[1] === null || parseFloat(val) <= arg[1])) : null;
537537
},
538538

@@ -629,13 +629,12 @@
629629
if ((rule.rules && Nette.toggleControl(elem, rule.rules, curSuccess, firsttime, value)) || rule.toggle) {
630630
has = true;
631631
if (firsttime) {
632-
var oldIE = !document.addEventListener, // IE < 9
633-
name = curElem.tagName ? curElem.name : curElem[0].name,
632+
var name = curElem.tagName ? curElem.name : curElem[0].name,
634633
els = curElem.tagName ? curElem.form.elements : curElem;
635634

636635
for (var i = 0; i < els.length; i++) {
637-
if (els[i].name === name && !Nette.inArray(handled, els[i])) {
638-
Nette.addEvent(els[i], oldIE && els[i].type in {checkbox: 1, radio: 1} ? 'click' : 'change', handler);
636+
if (els[i].name === name && handled.indexOf(els[i]) < 0) {
637+
Nette.addEvent(els[i], 'change', handler);
639638
handled.push(els[i]);
640639
}
641640
}
@@ -679,13 +678,8 @@
679678

680679
Nette.addEvent(form, 'submit', function(e) {
681680
if (!Nette.validateForm(form)) {
682-
if (e && e.stopPropagation) {
683-
e.stopPropagation();
684-
e.preventDefault();
685-
} else if (window.event) {
686-
event.cancelBubble = true;
687-
event.returnValue = false;
688-
}
681+
e.stopPropagation();
682+
e.preventDefault();
689683
}
690684
});
691685
};
@@ -707,7 +701,7 @@
707701
}
708702

709703
Nette.addEvent(document.body, 'click', function(e) {
710-
var target = e.target || e.srcElement;
704+
var target = e.target;
711705
while (target) {
712706
if (target.form && target.type in {submit: 1, image: 1}) {
713707
target.form['nette-submittedBy'] = target;
@@ -720,31 +714,6 @@
720714
};
721715

722716

723-
/**
724-
* Determines whether the argument is an array.
725-
*/
726-
Nette.isArray = function(arg) {
727-
return Object.prototype.toString.call(arg) === '[object Array]';
728-
};
729-
730-
731-
/**
732-
* Search for a specified value within an array.
733-
*/
734-
Nette.inArray = function(arr, val) {
735-
if ([].indexOf) {
736-
return arr.indexOf(val) > -1;
737-
} else {
738-
for (var i = 0; i < arr.length; i++) {
739-
if (arr[i] === val) {
740-
return true;
741-
}
742-
}
743-
return false;
744-
}
745-
};
746-
747-
748717
/**
749718
* Converts string to web safe characters [a-z0-9-] text.
750719
*/

0 commit comments

Comments
 (0)