call toObject before storing models

This commit is contained in:
Ivan Socolsky 2015-08-20 10:13:56 -03:00
parent 80d1d31130
commit 1b6980fd1e
3 changed files with 14 additions and 3 deletions

View File

@ -145,6 +145,12 @@ TxProposal.fromObj = function(obj) {
return x;
};
TxProposal.prototype.toObject = function() {
var x = _.cloneDeep(this);
x.isPending = this.isPending();
return x;
};
TxProposal.prototype.setInputs = function(inputs) {
this.inputs = inputs;
this.inputPaths = _.pluck(inputs, 'path');

View File

@ -65,6 +65,12 @@ Wallet.fromObj = function(obj) {
return x;
};
Wallet.prototype.toObject = function() {
var x = _.cloneDeep(this);
x.isShared = this.isShared();
return x;
};
/* For compressed keys, m*73 + n*34 <= 496 */
Wallet.COPAYER_PAIR_LIMITS = {
1: 1,

View File

@ -101,7 +101,7 @@ Storage.prototype.fetchWallet = function(id, cb) {
Storage.prototype.storeWallet = function(wallet, cb) {
this.db.collection(collections.WALLETS).update({
id: wallet.id
}, wallet, {
}, wallet.toObject(), {
w: 1,
upsert: true,
}, cb);
@ -326,11 +326,10 @@ Storage.prototype.storeNotification = function(walletId, notification, cb) {
// TODO: remove walletId from signature
Storage.prototype.storeTx = function(walletId, txp, cb) {
txp.isPending = txp.isPending(); // Persist attribute to use when querying
this.db.collection(collections.TXS).update({
id: txp.id,
walletId: walletId
}, txp, {
}, txp.toObject(), {
w: 1,
upsert: true,
}, cb);