diff --git a/public/views/includes/backupNeededPopup.html b/public/views/includes/backupNeededPopup.html new file mode 100644 index 000000000..c74742e06 --- /dev/null +++ b/public/views/includes/backupNeededPopup.html @@ -0,0 +1,27 @@ + diff --git a/public/views/tab-receive.html b/public/views/tab-receive.html index c445a2624..3ab6158aa 100644 --- a/public/views/tab-receive.html +++ b/public/views/tab-receive.html @@ -31,7 +31,12 @@
-
+
+
+ Wallet not backed up +
+
+
diff --git a/src/js/controllers/backup.js b/src/js/controllers/backup.js index ea28fdaad..62170a6c7 100644 --- a/src/js/controllers/backup.js +++ b/src/js/controllers/backup.js @@ -49,15 +49,6 @@ angular.module('copayApp.controllers').controller('backupController', }, 10); }; - $scope.goBack = function() { - if ($scope.step == 1) { - if ($stateParams.fromOnboarding) $state.go('onboarding.backupRequest'); - else $state.go('wallet.preferences'); - } else { - $scope.goToStep($scope.step - 1); - } - }; - var backupError = function(err) { ongoingProcess.set('validatingWords', false); $log.debug('Failed to verify backup: ', err); @@ -198,6 +189,7 @@ angular.module('copayApp.controllers').controller('backupController', walletId: $stateParams.walletId, fromOnboarding: true }); + else if ($stateParams.fromReceive) $state.go('tabs.receive'); else $state.go('tabs.preferences', { walletId: $stateParams.walletId }); diff --git a/src/js/controllers/tab-receive.js b/src/js/controllers/tab-receive.js index 5cb57dcb2..b17468ae5 100644 --- a/src/js/controllers/tab-receive.js +++ b/src/js/controllers/tab-receive.js @@ -71,4 +71,28 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi }, 100); }; + $scope.openBackupNeededPopup = function() { + $ionicModal.fromTemplateUrl('views/includes/backupNeededPopup.html', { + scope: $scope, + backdropClickToClose: false, + hardwareBackButtonClose: false + }).then(function(modal) { + $scope.BackupNeededPopup = modal; + $scope.BackupNeededPopup.show(); + }); + }; + + $scope.closeBackupNeededModal = function() { + $scope.BackupNeededPopup.hide(); + $scope.BackupNeededPopup.remove(); + }; + + $scope.goToBackupFlow = function() { + $scope.BackupNeededPopup.hide(); + $scope.BackupNeededPopup.remove(); + $state.go('tabs.receive.backup', { + fromReceive: true, + walletId: $scope.wallet.credentials.walletId + }); + }; }); diff --git a/src/js/routes.js b/src/js/routes.js index dea85a6e8..6dde26bca 100644 --- a/src/js/routes.js +++ b/src/js/routes.js @@ -236,7 +236,7 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr * */ - .state('tabs.send.amount', { + .state('tabs.send.amount', { url: '/amount/:isWallet/:toAddress/:toName/:toEmail', views: { 'tab-send@tabs': { @@ -551,7 +551,7 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr /* * - *TO DO + * Copayers * */ @@ -565,6 +565,22 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr } }) + /* + * + * Back flow from receive + * + */ + + .state('tabs.receive.backup', { + url: '/backup/:fromReceive/:walletId', + views: { + 'tab-receive@tabs': { + controller: 'backupController', + templateUrl: 'views/backup.html' + } + } + }) + /* * * Onboarding diff --git a/src/sass/views/includes/modals/modals.scss b/src/sass/views/includes/modals/modals.scss index 63b8af5fe..7c3aca25f 100644 --- a/src/sass/views/includes/modals/modals.scss +++ b/src/sass/views/includes/modals/modals.scss @@ -9,7 +9,12 @@ transform: translate(-50%, -50%); border-radius: .25rem; &-header { - background: rgb(1, 209, 162); + &-success { + background: rgb(1, 209, 162); + } + &-warning { + background: orange; + } padding: 1rem; border-radius: .25rem .25rem 0 0; min-height: 120px; @@ -26,6 +31,12 @@ background-size: contain; margin-top: .3rem; } + &-img-warning { + background-image: url('../img/onboarding-success.svg'); + height: 6rem; + background-size: contain; + margin-top: .3rem; + } } &-content { padding: .5rem .8rem; @@ -42,11 +53,16 @@ font-weight: 200; } } - &-content-success{ + &-content-success { button{ color:rgb(23, 174, 140) !important; } } + &-content-warning { + button{ + color: orange !important; + } + } } .modal-backdrop.active { diff --git a/src/sass/views/tab-receive.scss b/src/sass/views/tab-receive.scss index baa2099d0..e24ba8739 100644 --- a/src/sass/views/tab-receive.scss +++ b/src/sass/views/tab-receive.scss @@ -43,6 +43,16 @@ } &-gen-address {} } + .qr { + padding: 30px; + } + .backup { + background-color: orange; + color: #fff; + i { + padding: 10px; + } + } } #wallets { position: relative;