-rw-r--r-- | frontend/beta/js/Clipperz/PM/DataModel/User.js | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/frontend/beta/js/Clipperz/PM/DataModel/User.js b/frontend/beta/js/Clipperz/PM/DataModel/User.js index b065557..b29d224 100644 --- a/frontend/beta/js/Clipperz/PM/DataModel/User.js +++ b/frontend/beta/js/Clipperz/PM/DataModel/User.js @@ -265,154 +265,159 @@ MochiKit.Logging.logError("- User.errorHandler: " + anErrorString + " (" + anExc if (isBatchUpdate != true) { Clipperz.NotificationCenter.notify(aValue, 'recordAdded', null, true); Clipperz.NotificationCenter.notify(this, 'updatedSection', 'records', true); } }, //----------------------------------------------------------------------------- 'addNewRecord': function() { var record; //MochiKit.Logging.logDebug(">>> User.addNewRecord"); record = new Clipperz.PM.DataModel.Record({user:this}); this.addRecord(record); Clipperz.NotificationCenter.notify(this, 'updatedSection', 'records', true); //MochiKit.Logging.logDebug("<<< User.addNewRecord"); return record; }, //------------------------------------------------------------------------- 'saveRecords': function(someRecords /*, aMethodName*/) { var deferredResult; // var methodName; var result; var i,c; //console.log("User.saveRecords - someRecords", someRecords); // methodName = aMethodName || 'addNewRecords'; Clipperz.NotificationCenter.notify(this, 'updatedSection', 'records', true); //MochiKit.Logging.logDebug(">>> User.saveRecords"); //MochiKit.Logging.logDebug(">>> [" + (new Date()).valueOf() + "] User.saveRecords"); /* MochiKit.Logging.logDebug("--- User.saveRecords - 1"); MochiKit.Iter.forEach(someRecords, function(aRecord) { if (aRecord.headerNotes() != null) { aRecord.setNotes(aRecord.headerNotes()); } aRecord.syncDirectLoginReferenceValues(); aRecord.currentVersion().createNewVersion(); aRecord.updateKey(); }); MochiKit.Logging.logDebug("--- User.saveRecords - 2"); */ - result = {'records': []}; + result = { + 'records': { +// 'deleted': [], + 'updated': [] + } + }; deferredResult = new MochiKit.Async.Deferred(); c = someRecords.length; for (i=0; i<c; i++) { deferredResult.addCallback(function(aRecord) { if (aRecord.headerNotes() != null) { aRecord.setNotes(aRecord.headerNotes()); } aRecord.syncDirectLoginReferenceValues(); aRecord.currentVersion().createNewVersion(); aRecord.updateKey(); }, someRecords[i]); deferredResult.addCallback(MochiKit.Async.wait, 0.1); } //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 1 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'updatedProgressState', 'saveCard_collectRecordInfo'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 2 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'updatedProgressState', 'saveCard_encryptUserData'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 3 " + res); return res;}); deferredResult.addCallback(MochiKit.Base.method(this, 'encryptedData')); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 4 " + res); return res;}); deferredResult.addCallback(function(aResult, res) { aResult['user'] = res; return aResult; }, result); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 5 " + res); return res;}); c = someRecords.length; for (i=0; i<c; i++) { var recordData; recordData = {}; //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.1 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'updatedProgressState', 'saveCard_encryptRecordData'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.2 " + res); return res;}); deferredResult.addCallback(MochiKit.Base.method(someRecords[i], 'encryptedData')); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.3 " + res); return res;}); deferredResult.addCallback(function(aResult, res) { aResult['record'] = res; return aResult; }, recordData); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.4 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'updatedProgressState', {} /*'saveCard_encryptRecordVersions'*/); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.5 " + res); return res;}); deferredResult.addCallback(MochiKit.Base.method(someRecords[i].currentVersion(), 'encryptedData')); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.6 " + res); return res;}); deferredResult.addCallback(function(aResult, res) { aResult['currentRecordVersion'] = res; return aResult; }, recordData); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.7 " + res); return res;}); deferredResult.addCallback(function(aResult, res) { - aResult['records'] = { 'updated': [res] }; + aResult['records']['updated'].push(res); return aResult; }, result); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 6.8 " + res); return res;}); } //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 7 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'updatedProgressState', 'saveCard_sendingData'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 8 " + res); return res;}); // deferredResult.addCallback(MochiKit.Base.method(this.connection(), 'message'), methodName); deferredResult.addCallback(MochiKit.Base.method(this.connection(), 'message'), 'saveChanges'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 9 " + res); return res;}); for (i=0; i<c; i++) { //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 9.1 " + res); return res;}); deferredResult.addCallback(MochiKit.Base.method(someRecords[i], 'takeSnapshotOfCurrentData')); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 9.2 " + res); return res;}); deferredResult.addCallback(MochiKit.Base.method(someRecords[i], 'setIsBrandNew'), false); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 9.3 " + res); return res;}); } //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 10 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'notify', 'recordUpdated'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 11 " + res); return res;}); deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'notify', 'directLoginUpdated'); //deferredResult.addBoth(function(res) {MochiKit.Logging.logDebug("User.saveRecords - 12 " + res); return res;}); deferredResult.callback(); return deferredResult; }, //------------------------------------------------------------------------- 'removeRecord': function(aRecord) { //MochiKit.Logging.logDebug(">>> User.removeRecord"); delete this.records()[aRecord.reference()]; //MochiKit.Logging.logDebug("--- User.removeRecord - 1"); Clipperz.NotificationCenter.notify(aRecord, 'recordRemoved', null, false); Clipperz.NotificationCenter.notify(this, 'updatedSection', 'records', true); //MochiKit.Logging.logDebug("<<< User.removeRecord"); }, //------------------------------------------------------------------------- 'deleteRecordsAction': function(someRecords) { var deferredResult; var parameters; //MochiKit.Logging.logDebug(">>> User.deleteRecordsAction - someRecords.length: " + someRecords.length); |