},
addSubfields : function () {
- for (var i in arguments) {
+ for (var i = 0; i < arguments.length; i++) {
var code = arguments[i];
var value = arguments[++i];
this.subfields.push( [ code, value ] );
insertOrderedFields : function () {
var me = this;
- for ( var i in arguments ) { // arguments is special, and for..in is correct
+ for (var i = 0; i < arguments.length; i++) {
var f = arguments[i];
var done = false;
for (var j = 0; j < this.fields.length; j++) {
- if (f.tag > this.fields[j].tag) {
+ if (f.tag < this.fields[j].tag) {
this.insertFieldsBefore(this.fields[j], f);
done = true;
break;
},
insertFieldsBefore : function (target) {
- arguments.splice(0,1);
+ var args = Array.prototype.slice.call(arguments);
+ args.splice(0,1);
var me = this;
for (var j = 0; j < this.fields.length; j++) {
if (target === this.fields[j]) {
j--;
- dojo.forEach( arguments, function (f) {
+ dojo.forEach( args, function (f) {
me.fields.splice(j++,0,f);
});
break;
},
insertFieldsAfter : function (target) {
- arguments.splice(0,1);
+ var args = Array.prototype.slice.call(arguments);
+ args.splice(0,1);
var me = this;
for (var j = 0; j < this.fields.length; j++) {
if (target === this.fields[j]) {
- dojo.forEach( arguments, function (f) {
+ dojo.forEach( args, function (f) {
me.fields.splice(j++,0,f);
});
break;