From 0bdb92b583689953d8288e252a153ced31afc125 Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Mon, 13 Jul 2015 13:09:52 -0300 Subject: [PATCH 1/3] fix refresh after send --- src/js/controllers/index.js | 3 ++- src/js/controllers/preferencesFee.js | 1 - src/js/controllers/walletHome.js | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/js/controllers/index.js b/src/js/controllers/index.js index f982d05cf..66fc83553 100644 --- a/src/js/controllers/index.js +++ b/src/js/controllers/index.js @@ -253,7 +253,8 @@ angular.module('copayApp.controllers').controller('indexController', function($r $log.debug('Retrying update... Try:' + tries) return self.updateAll({ walletStatus: null, - untilItChanges: true + untilItChanges: true, + triggerTxUpdate: opts.triggerTxUpdate, }, initStatusHash, ++tries); }, 1400 * tries); } diff --git a/src/js/controllers/preferencesFee.js b/src/js/controllers/preferencesFee.js index c966e9ca4..dde8e565b 100644 --- a/src/js/controllers/preferencesFee.js +++ b/src/js/controllers/preferencesFee.js @@ -32,7 +32,6 @@ angular.module('copayApp.controllers').controller('preferencesFeeController', configService.set(opts, function(err) { if (err) console.log(err); - $scope.$emit('Local/UnitSettingUpdated'); }); }; diff --git a/src/js/controllers/walletHome.js b/src/js/controllers/walletHome.js index ebd25987a..618070537 100644 --- a/src/js/controllers/walletHome.js +++ b/src/js/controllers/walletHome.js @@ -745,6 +745,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi profileService.lockFC(); self.setOngoingProcess(); if (err) { + $log.debug('Sign error:', err); err.message = gettext('The payment was created but could not be signed. Please try again from home screen.') + (err.message ? ' ' + err.message : ''); return cb(err); } From 460b65d9ea6e8f8521c0251486821cad76f38260 Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Mon, 13 Jul 2015 13:21:47 -0300 Subject: [PATCH 2/3] do not trim output in debuging --- src/js/routes.js | 50 +++++++++++++++++++++++++++++------------------- 1 file changed, 30 insertions(+), 20 deletions(-) diff --git a/src/js/routes.js b/src/js/routes.js index 2ef827cc9..8d056f72e 100644 --- a/src/js/routes.js +++ b/src/js/routes.js @@ -28,7 +28,7 @@ angular var orig = $delegate[level]; $delegate[level] = function() { - if (level=='error') + if (level == 'error') console.log(arguments); var args = [].slice.call(arguments); @@ -43,9 +43,13 @@ angular else v = JSON.stringify(v); } - v = v.toString(); - if (v.length > 200) - v = v.substr(0, 197) + '...'; + // Trim output in mobile + if ( window.cordova ) { + v = v.toString(); + if (v.length > 1000) { + v = v.substr(0, 997) + '...'; + } + } } catch (e) { console.log('Error at log decorator:', e); v = 'undefined'; @@ -85,7 +89,9 @@ angular $scope.create = function(noWallet) { $scope.creatingProfile = true; - profileService.create({noWallet: noWallet}, function(err) { + profileService.create({ + noWallet: noWallet + }, function(err) { if (err) { $scope.creatingProfile = false; $log.warn(err); @@ -100,7 +106,8 @@ angular } } } - }) + }); + $stateProvider .state('disclaimer', { url: '/disclaimer', @@ -111,14 +118,14 @@ angular controller: function($scope, $timeout, storageService, applicationService, go) { storageService.getCopayDisclaimerFlag(function(err, val) { $scope.agreed = val; - $timeout(function(){ + $timeout(function() { $scope.$digest(); }, 1); }); $scope.agree = function() { storageService.setCopayDisclaimerFlag(function(err) { - $timeout(function(){ + $timeout(function() { applicationService.restart(); }, 1000); }); @@ -256,8 +263,8 @@ angular }, } }) - - .state('preferencesAdvanced', { + + .state('preferencesAdvanced', { url: '/preferencesAdvanced', templateUrl: 'views/preferencesAdvanced.html', walletShouldBeComplete: true, @@ -438,10 +445,12 @@ angular if (nodeWebkit.isDefined()) { var gui = require('nw.gui'); var win = gui.Window.get(); - var nativeMenuBar = new gui.Menu({ type: "menubar" }); + var nativeMenuBar = new gui.Menu({ + type: "menubar" + }); try { nativeMenuBar.createMacBuiltin("Copay"); - } catch(e) { + } catch (e) { $log.debug('This is not OSX'); } win.menu = nativeMenuBar; @@ -516,7 +525,8 @@ angular */ function cleanUpLater(e, e2) { - var cleanedUp = false, timeoutID; + var cleanedUp = false, + timeoutID; var cleanUp = function() { if (cleanedUp) return; cleanedUp = true; @@ -526,7 +536,7 @@ angular cachedBackPanel = null; cachedTransitionState = ''; if (timeoutID) { - timeoutID=null; + timeoutID = null; window.clearTimeout(timeoutID); } }; @@ -551,7 +561,7 @@ angular var fromName = fromState.name; var toName = toState.name; - if (!fromName || !toName) + if (!fromName || !toName) return true; var fromWeight = pageWeight[fromName]; @@ -569,7 +579,7 @@ angular entering = 'CslideInRight'; } - // Vertical Slide Animation? + // Vertical Slide Animation? } else if (fromName && fromWeight >= 0 && toWeight >= 0) { if (toWeight) { entering = 'CslideInUp'; @@ -577,7 +587,7 @@ angular leaving = 'CslideOutDown'; } - // no Animation ? + // no Animation ? } else { return true; } @@ -596,8 +606,8 @@ angular } else { var sc; // Keep prefDiv scroll - var contentDiv = e.getElementsByClassName('content'); - if (contentDiv && contentDiv[0]) + var contentDiv = e.getElementsByClassName('content'); + if (contentDiv && contentDiv[0]) sc = contentDiv[0].scrollTop; cachedBackPanel = e.cloneNode(true); @@ -606,7 +616,7 @@ angular c.appendChild(cachedBackPanel); if (sc) - cachedBackPanel.getElementsByClassName('content')[0].scrollTop = sc; + cachedBackPanel.getElementsByClassName('content')[0].scrollTop = sc; cachedTransitionState = desiredTransitionState; //console.log('CACHing animation', cachedTransitionState); From 4ffd6bd3517c7b2c32cba8628cbbf2ceb8e517cd Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Mon, 13 Jul 2015 13:31:05 -0300 Subject: [PATCH 3/3] fix future times --- src/js/controllers/index.js | 11 ++++++----- src/js/controllers/walletHome.js | 16 ---------------- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/src/js/controllers/index.js b/src/js/controllers/index.js index 66fc83553..5787c5f81 100644 --- a/src/js/controllers/index.js +++ b/src/js/controllers/index.js @@ -433,14 +433,15 @@ angular.module('copayApp.controllers').controller('indexController', function($r }; self.setTxHistory = function(txs) { - var now = new Date(); + var now = Math.floor(Date.now() / 1000); var c = 0; self.txHistoryPaging = txs[self.limitHistory] ? true : false; lodash.each(txs, function(tx) { - tx.ts = tx.minedTs || tx.sentTs; - // no future transaction... - if (tx.ts > now) - ts.ts = now; + + // no future transactions... + if (tx.time > now) + tx.time = now; + tx.rateTs = Math.floor((tx.ts || now) / 1000); tx.amountStr = profileService.formatAmount(tx.amount); //$filter('noFractionNumber')( if (c < self.limitHistory) { diff --git a/src/js/controllers/walletHome.js b/src/js/controllers/walletHome.js index 618070537..a50009ff6 100644 --- a/src/js/controllers/walletHome.js +++ b/src/js/controllers/walletHome.js @@ -959,22 +959,6 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi return this.alternativeIsoCode; }; - this._addRates = function(txs, cb) { - if (!txs || txs.length == 0) return cb(); - var index = lodash.groupBy(txs, 'rateTs'); - - rateService.getHistoricRates(config.alternativeIsoCode, lodash.keys(index), function(err, res) { - if (err || !res) return cb(err); - lodash.each(res, function(r) { - lodash.each(index[r.ts], function(tx) { - var alternativeAmount = (r.rate != null ? tx.amount * rateService.SAT_TO_BTC * r.rate : null); - tx.alternativeAmount = alternativeAmount ? $filter('noFractionNumber')(alternativeAmount, 2) : null; - }); - }); - return cb(); - }); - }; - this.openTxModal = function(btx) { var self = this; var fc = profileService.focusedClient;