From 468850f9fb524381829da911d822702e0b955363 Mon Sep 17 00:00:00 2001 From: Marty Alcala Date: Thu, 20 Oct 2016 17:55:06 -0400 Subject: [PATCH] fix backwards compatible qr code paypro scan --- src/js/services/incomingData.js | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/src/js/services/incomingData.js b/src/js/services/incomingData.js index 7b8a0117c..d0e38ae9f 100644 --- a/src/js/services/incomingData.js +++ b/src/js/services/incomingData.js @@ -8,6 +8,10 @@ angular.module('copayApp.services').factory('incomingData', function($log, $stat $rootScope.$broadcast('incomingDataMenu.showMenu', data); }; + // $timeout(function() { + // root.redir('data'); + // }, 2000); + root.redir = function(data) { $log.debug('Processing incoming data: ' + data); @@ -48,6 +52,7 @@ angular.module('copayApp.services').factory('incomingData', function($log, $stat data = sanitizeUri(data); //data = 'msEVvmpiFEtXv3MdsFLUYMbnNLeNYrqBEA'; + //data = 'bitcoin:n4asaBf1Vr9Sfijv6e3YJH2SCMdSLNeW64?amount=0.001592&r=https%3A%2F%2Ftest.bitpay.com%3A443%2Fi%2FVLafdjvp5EnEDwV5UHLoFQ'; // BIP21 if (bitcore.URI.isValid(data)) { @@ -62,7 +67,9 @@ angular.module('copayApp.services').factory('incomingData', function($log, $stat // Timeout is required to enable the "Back" button $timeout(function() { if (parsed.r) { - $state.transitionTo('tabs.send.confirm', {paypro: parsed.r}); + getPayProDetails(parsed.r, function(err, details) { + handlePayPro(details); + }); } else { if (amount) { $state.transitionTo('tabs.send.confirm', {toAmount: amount, toAddress: addr, description:message}); @@ -81,14 +88,7 @@ angular.module('copayApp.services').factory('incomingData', function($log, $stat root.showMenu({data: data, type: 'url'}); return; } - $state.go('tabs.send'); - var stateParams = { - toAmount: details.amount, - toAddress: details.toAddress, - description: details.memo, - paypro: details - }; - $state.transitionTo('tabs.send.confirm', stateParams); + handlePayPro(details); return true; }); // Plain Address @@ -179,12 +179,25 @@ angular.module('copayApp.services').factory('incomingData', function($log, $stat } function goToAmountPage(toAddress) { - console.log('goToAmountPage called', toAddress); $state.go('tabs.send'); $timeout(function() { $state.transitionTo('tabs.send.amount', {toAddress: toAddress}); }, 100); } + function handlePayPro(payProDetails){ + var stateParams = { + toAmount: payProDetails.amount, + toAddress: payProDetails.toAddress, + description: payProDetails.memo, + paypro: payProDetails + }; + $state.go('tabs.send').then(function() { + $timeout(function() { + $state.transitionTo('tabs.send.confirm', stateParams); + }); + }); + } + return root; });