2016-08-16 16:47:51 -03:00
< ion-view ng-controller = "backupController" cache-view = "false" ng-init = "init(index.prevState)" >
< ion-nav-bar class = "bar-stable" >
< ion-nav-title > Backup Flow< / ion-nav-title >
< ion-nav-buttons side = "primary" ng-show = "(step != 1 && step != 4)" >
2016-08-17 15:53:17 -03:00
< button class = "button" ng-click = "goBack()" >
2016-08-16 16:47:51 -03:00
< i class = "ion-arrow-left-c" > < / i > Back
< / button >
< / ion-nav-buttons >
< / ion-nav-bar >
< ion-content class = "has-header" >
< div class = "box-notification" ng-show = "error" >
< span class = "text-warning" >
{{error|translate}}
< / span >
< / div >
<!--
## STEP 1
-->
< div class = "content preferences text-center" >
< div ng-show = "step == 1" >
< div ng-show = "mnemonicWords || (!credentialsEncrypted && !deleted)" class = "row" >
< h5 class = "text-center" translate > Write your wallet recovery phrase< / h5 >
< div class = "size-14 text-gray columns" ng-show = "(index.n>1 && index.m != index.n )" >
< span translate >
To restore this {{index.m}}-{{index.n}} < b > shared< / b > wallet you will need
< / span > :
< div class = "m10t columns size-14 text-gray" >
< span translate > Your wallet recovery phrase and access to the server that coordinated the initial wallet creation. You still need {{index.m}} keys to spend.< / span >
< span translate > < b > OR< / b > the wallet recovery phrase of < b > all< / b > copayers in the wallet< / span >
< span translate > < b > OR< / b > 1 wallet export file and the remaining quorum of wallet recovery phrases (e.g. in a 3-5 wallet: 1 wallet export file + 2 wallet recovery phrases of any of the other copayers).< / span >
< / div >
< / span >
2016-05-17 11:10:16 -03:00
< / div >
2016-08-16 16:47:51 -03:00
< div class = "size-14 text-gray columns" ng-show = "(index.n>1 && index.m == index.n )" >
< span translate >
To restore this {{index.m}}-{{index.n}} < b > shared< / b > wallet you will need
< / span > :
< div class = "m10t columns size-14 text-gray" >
< span translate > Your wallet recovery phrase and access to the server that coordinated the initial wallet creation. You still need {{index.m}} keys to spend.< / span >
< span translate > < b > OR< / b > the wallet recovery phrases of < b > all< / b > copayers in the wallet< / span >
< / div >
< / span >
2016-05-17 11:10:16 -03:00
< / div >
2015-11-20 15:54:27 -03:00
< / div >
2015-09-03 16:49:46 -03:00
2016-08-16 16:47:51 -03:00
< div class = "row m20t" ng-show = "deleted" >
< div class = "columns size-14 text-gray text-center" translate >
Wallet recovery phrase not available. You can still export it from Advanced > Export.
< / div >
2015-11-20 15:54:27 -03:00
< / div >
2015-09-03 16:49:46 -03:00
2016-08-16 16:47:51 -03:00
< div ng-show = "mnemonicWords || (!credentialsEncrypted && !deleted)" >
< p class = "text-center columns text-gray" ng-show = "index.n==1 && step == 1" >
< span translate >
You need the wallet recovery phrase to restore this personal wallet. Write it down and keep them somewhere safe.
< / span >
< / p >
< div class = "row" ng-show = "!credentialsEncrypted" >
< div class = "columns" >
< div class = "panel" ng-class = "{'enable_text_select': index.network == 'testnet'}" >
< span ng-repeat = "word in mnemonicWords track by $index" > < span style = "white-space:nowrap" > {{word}}< / span > < span ng-show = "useIdeograms" >   < / span > < / span >
< / div >
2015-11-20 14:38:29 -03:00
< / div >
< / div >
2015-11-20 15:54:27 -03:00
< / div >
2015-11-20 14:38:29 -03:00
2016-08-16 16:47:51 -03:00
< div class = "columns extra-padding-bottom" ng-show = "!credentialsEncrypted" >
< div class = "line-t p10 size-10 text-gray text-center" ng-show = "mnemonicHasPassphrase" >
< i class = "fi-alert" > < / i >
< span translate >
This recovery phrase was created with a password. To recover this wallet both the recovery phrase and password are needed.
< / span >
< / div >
2015-11-20 14:38:29 -03:00
< / div >
2016-08-16 16:47:51 -03:00
< div class = "button-box" >
< button
ng-show="!deleted"
ng-disabled="credentialsEncrypted || error"
class="button button-block button-stable"
ng-click="goToStep(2);"
translate>Continue
< / button >
< / div >
2015-11-20 14:38:29 -03:00
< / div >
2016-08-16 16:47:51 -03:00
<!--
## STEP 2
-->
2015-11-20 16:10:34 -03:00
2016-08-16 16:47:51 -03:00
< div ng-show = "step == 2" >
2016-06-27 10:58:52 -03:00
< div class = "columns text-center extra-padding-bottom" >
< h5 translate > Confirm your wallet recovery phrase< / h5 >
< p class = "text-gray m0" translate >
Please tap the words in order to confirm your backup phrase is correctly written.
< / p >
< div class = "panel words text-left" >
< span ng-repeat = "cword in customWords track by $index" ng-show = "customWords[$index]" >
< button class = "button radius tiny words" ng-click = "removeButton($index, cword)" > {{cword.word}}< / button >
< / span >
< / div >
< div class = "text-left" >
< span ng-repeat = "shuffledWord in shuffledMnemonicWords track by $index" >
< button class = "button radius tiny words" ng-click = "addButton($index, shuffledWord)"
ng-disabled="shuffledWord.selected">{{shuffledWord.word}}
< / button >
< / span >
< / div >
2015-11-20 16:10:34 -03:00
< / div >
2016-08-16 16:47:51 -03:00
< div class = "button-box" >
< button
ng-disabled="!selectComplete"
class="button button-block button-stable"
ng-click="goToStep(3);"
translate>Continue
< / button >
< / div >
2015-11-20 14:38:29 -03:00
< / div >
2015-09-03 16:49:46 -03:00
2016-08-16 16:47:51 -03:00
<!--
## STEP 3
-->
2015-11-20 16:10:34 -03:00
2016-08-16 16:47:51 -03:00
< div ng-show = "step == 3" >
2016-05-09 20:23:20 +02:00
< h5 translate > Enter your password< / h5 >
2016-08-16 16:47:51 -03:00
< label class = "item item-input item-stacked-label" >
< span class = "input-label" transalate > In order to verify your wallet backup, please type your password:< / span >
2015-11-20 14:38:29 -03:00
< input type = "text" id = "passphrase" ng-model = "passphrase" autocapitalize = "off" spellcheck = "false" autofocus / >
2016-08-16 16:47:51 -03:00
< / label >
< div class = "button-box" >
< button
ng-disabled="!passphrase"
class="button button-block button-stable"
ng-click="goToStep(4);"
translate>Continue
< / button >
2015-11-20 14:38:29 -03:00
< / div >
< / div >
2016-08-16 16:47:51 -03:00
<!--
## STEP 4
-->
2015-11-20 17:30:38 -03:00
2016-08-16 16:47:51 -03:00
< div ng-show = "step == 4" >
< div class = "row m10t m10b text-center" ng-show = "!backupError" >
< div class = "circle-icon" >
< i class = "fi-like size-48" > < / i >
< / div >
< h5 translate > Congratulations!< / h5 >
< p class = "text-gray columns" translate >
You backed up your wallet. You can now restore this wallet at any time.
< / p >
2015-11-23 17:53:42 -03:00
2016-08-16 16:47:51 -03:00
< div class = "columns text-center m20t" >
< button
class="button round expand"
href ui-sref="walletHome"
translate>Finish
< / button >
<!-- hide this in multisig just to show less text -->
< div class = "row m20t" ng-show = "index.n==1" >
< div class = "columns size-10 text-gray" >
< div class = "p10t line-t" >
< span translate > You can safely install your wallet on another device and use it from multiple devices at the same time.< / span >
< a href = "#" ng-click = "$root.openExternalLink('https://github.com/bitpay/copay/blob/master/README.md#copay-backups-and-recovery')" translate >
Learn more about Copay backups
< / a >
< / div >
2015-11-24 11:36:06 -03:00
< / div >
< / div >
< / div >
2015-11-23 17:53:42 -03:00
< / div >
2016-08-16 16:47:51 -03:00
< div class = "row m10t m10b text-center" ng-show = "backupError" >
< div class = "circle-icon" >
< i class = "fi-dislike size-48" > < / i >
< / div >
< h5 translate > Backup failed< / h5 >
< p class = "text-gray columns" translate >
Failed to verify backup. Please check your information
< / p >
< div class = "columns size-10 text-gray extra-padding-bottom" ng-show = "index.n==1" >
< div class = "p10t line-t" >
< span translate > You can safely install your wallet on another device and use it from multiple devices at the same time.< / span >
< a href = "#" ng-click = "$root.openExternalLink('https://github.com/bitpay/copay/blob/master/README.md#copay-backups-and-recovery')" translate >
Learn more about Copay backups
< / a >
< / div >
2015-11-30 11:34:33 -03:00
< / div >
2015-11-20 14:38:29 -03:00
2016-08-16 16:47:51 -03:00
< div class = "button-box" >
< button
class="button button-block button-stable"
ng-click="goToStep(1);"
translate>Try again
< / button >
< / div >
2015-09-15 16:32:15 -03:00
< / div >
2015-07-15 22:10:59 -03:00
< / div >
2016-08-16 16:47:51 -03:00
< / ion-content >
< / ion-view >