addr.isnew(1);
addr.usr(patron.id());
addr.country(defaultCountry);
+ if(!patron.addresses())
+ patron.addresses([]);
if(patron.addresses().length == 0) {
patron.mailing_address(addr);
patron.billing_address(addr);
function uEditIterateFields(callback) {
- for( var f in dataFields ) {
+ for( var f in dataFields )
callback(dataFields[f]);
- }
}
}
+function compactArray(arr) {
+ var a = [];
+ for( var i = 0; arr && i < arr.length; i++ ) {
+ if( arr[i] != null )
+ a.push(arr[i]);
+ }
+ return a;
+}
}
)
);
+
+ /* XXX */
+ for( var f in dataFields ) {
+ if( dataFields[f].object == address ) {
+ dataFields[f] = null;
+ }
+ }
+
+ dataFields = compactArray(dataFields);
+
} else {
if( detach ) { /* remove the offending address from the list */