copay/public/views/walletHome.html

531 lines
24 KiB
HTML
Raw Normal View History

2015-05-16 20:34:26 -07:00
<div class="topbar-container"
2015-05-07 14:35:54 -07:00
ng-include="'views/includes/topbar.html'"
2015-12-01 12:16:39 -08:00
ng-init="showPreferences = true">
2015-05-07 14:35:54 -07:00
</div>
<div ng-controller="walletHomeController as home">
<div class="row columns m20tp" ng-show="index.noFocusedWallet">
<div class="text-center text-warning m20b">
2015-05-14 10:01:31 -07:00
<i class="fi-alert"></i> <span translate>You do not have a wallet</span>
</div>
2015-06-11 07:59:48 -07:00
<button class="button black round expand" ng-click="$root.go('add')" translate>Create</button>
2015-05-13 08:41:05 -07:00
2015-11-13 11:12:32 -08:00
<div class="text-center text-gray p20v" ng-click="$root.go('preferencesGlobal')">
<button class=" outline round dark-gray tiny" translate>Settings</button>
2015-05-13 08:41:05 -07:00
</div>
</div>
<div class="onGoingProcess" ng-show="index.isOffline">
<div class="onGoingProcess-content" ng-style="{'background-color':'#222'}">
2015-05-06 12:10:16 -07:00
<div class="spinner">
<div class="rect1"></div>
<div class="rect2"></div>
<div class="rect3"></div>
<div class="rect4"></div>
<div class="rect5"></div>
</div>
<span translate>Reconnecting to Wallet Service...</span>
</div>
</div>
<div class="onGoingProcess" ng-show="index.anyOnGoingProcess && !index.isOffline">
<div class="onGoingProcess-content" ng-style="{'background-color':index.backgroundColor}">
2015-05-06 12:10:16 -07:00
<div class="spinner">
<div class="rect1"></div>
<div class="rect2"></div>
<div class="rect3"></div>
<div class="rect4"></div>
<div class="rect5"></div>
</div>
<span translate ng-show="
index.onGoingProcessName == 'openingWallet'
|| index.onGoingProcessName == 'updatingStatus'
|| index.onGoingProcessName == 'updatingBalance'
|| index.onGoingProcessName == 'updatingPendingTxps'
2015-05-06 12:10:16 -07:00
"> Updating Wallet... </span>
<span translate ng-show="index.onGoingProcessName == 'scanning'">Scanning Wallet funds...</span>
<span translate ng-show="index.onGoingProcessName == 'recreating'">Recreating Wallet...</span>
<span translate ng-show="index.onGoingProcessName == 'generatingCSV'">Generating .csv file...</span>
</div>
</div>
2015-04-27 05:59:20 -07:00
<div class="onGoingProcess" ng-show="home.onGoingProcess && !index.anyOnGoingProces && !index.isOffline">
<div class="onGoingProcess-content" ng-style="{'background-color':index.backgroundColor}">
2015-05-06 12:10:16 -07:00
<div class="spinner">
<div class="rect1"></div>
<div class="rect2"></div>
<div class="rect3"></div>
<div class="rect4"></div>
<div class="rect5"></div>
</div>
2016-01-06 12:19:31 -08:00
{{home.onGoingProcess}}...
</div>
2015-04-23 22:42:10 -07:00
</div>
<div class="oh" ng-show="!index.noFocusedWallet">
2015-05-06 12:10:16 -07:00
<!--
2015-04-23 10:37:36 -07:00
2015-05-06 12:10:16 -07:00
WalletHome
2015-04-22 09:53:57 -07:00
2015-05-06 12:10:16 -07:00
-->
2015-04-22 08:31:30 -07:00
2015-05-06 12:10:16 -07:00
<div id="walletHome" class="walletHome tab-view tab-in">
2016-02-18 11:26:02 -08:00
<div class="oh pr" ng-show="!index.isSearching">
2015-05-06 12:10:16 -07:00
<div class="amount" ng-style="{'background-color':index.backgroundColor}">
<div ng-if="!index.anyOnGoingProcess && !index.notAuthorized">
<div class="m15t" ng-show="index.updateError" ng-click='index.updateAll({triggerTxUpdate: true})'>
<span class="size-12 db m10b">{{index.updateError|translate}}</span>
2015-06-28 12:56:23 -07:00
<button class="outline white tiny round" translate>Tap to retry</button>
2015-05-06 12:10:16 -07:00
</div>
2015-04-23 20:34:52 -07:00
2015-05-06 12:10:16 -07:00
<div ng-show="index.walletScanStatus == 'error'" ng-click='index.retryScan()'>
<span translate>Scan status finished with error</span>
<br><span translate>Tap to retry</span>
</div>
2015-03-06 07:00:10 -08:00
<div ng-click='index.updateAll({triggerTxUpdate: true})' ng-show="!index.updateError && index.walletScanStatus != 'error'">
2015-05-06 12:10:16 -07:00
<strong class="size-36">{{index.totalBalanceStr}}</strong>
<div class="size-14"
ng-if="index.totalBalanceAlternative">
{{index.totalBalanceAlternative}} {{index.alternativeIsoCode}}
</div>
2015-08-11 13:45:57 -07:00
<div class="size-14"
ng-if="index.pendingAmount">
<span translate>Pending Confirmation</span>:
{{index.pendingAmountStr}}
</div>
2015-09-08 21:08:21 -07:00
2015-05-06 12:10:16 -07:00
</div>
</div>
2015-03-06 07:00:10 -08:00
2015-05-06 12:10:16 -07:00
<div ng-if="index.anyOnGoingProcess">
<div class="size-36">
<strong>...</strong>
</div>
</div>
</div> <!-- amount -->
2015-03-06 07:00:10 -08:00
2016-02-03 13:24:13 -08:00
<div class="wallet-info">
<span ng-include="'views/includes/walletInfo.html'"></span>
2015-05-06 12:10:16 -07:00
</div>
2015-12-02 11:01:25 -08:00
<div class="camera-icon" ng-show="index.isComplete">
2016-01-29 07:36:49 -08:00
<qr-scanner on-scan="home.onQrCodeScanned(data)"></qr-scanner>
2015-12-02 11:01:25 -08:00
</div>
2015-05-06 12:10:16 -07:00
</div> <!-- oh -->
2015-03-06 07:00:10 -08:00
2015-04-23 08:27:43 -07:00
2016-02-03 13:24:13 -08:00
<div class="oh pr m20t" ng-show="index.notAuthorized && ! index.anyOnGoingProcess">
2015-05-06 12:10:16 -07:00
<div class="text-center text-warning">
<i class="fi-alert"></i>
<span translate>
WARNING: Wallet not registered
</span>
</div>
<div class="text-center text-gray m15r m15l" translate>
This wallet is not registered at the given Bitcore Wallet Service (BWS). You can recreate it from the local information.
</div>
<div class="text-center m10t ">
2015-05-16 20:34:26 -07:00
<span class="button outline round dark-gray tiny"
2015-05-06 12:10:16 -07:00
ng-click="index.recreate()">
<span translate>Recreate</span>
</span>
</div>
2015-04-28 07:53:25 -07:00
</div>
2015-04-23 20:34:52 -07:00
2016-04-11 08:56:18 -07:00
<div class="release size-12" ng-show="newRelease && !index.isSearching" ng-click="$root.openExternalLink('https://github.com/bitpay/copay/releases/latest')">
<span>{{newRelease}}</span><i class="icon-arrow-right3 right size-18"></i>
</div>
2016-02-18 11:26:02 -08:00
<div class="oh pr" ng-if="index.txps[0]" ng-show="!index.isSearching">
2015-09-07 13:43:55 -07:00
<h4 ng-show="index.requiresMultipleSignatures" class="title m0" translate>Payment Proposals</h4>
<h4 ng-show="!index.requiresMultipleSignatures" class="title m0" translate>Unsent transactions</h4>
<div class="last-transactions pr" ng-repeat="tx in index.txps">
<div ng-include="index.txTemplateUrl"></div>
2015-05-06 12:10:16 -07:00
</div>
2015-04-23 08:58:08 -07:00
2015-09-07 13:43:55 -07:00
<div class="text-gray text-center size-12 p10t"
2015-12-03 13:06:45 -08:00
ng-show="index.lockedBalanceSat">
2015-09-07 13:43:55 -07:00
<span translate>Total Locked Balance</span>:
<b>{{index.lockedBalanceStr}} </b>
<span> {{index.lockedBalanceAlternative}}
{{index.alternativeIsoCode}} </span>
2015-05-06 12:10:16 -07:00
</div>
</div>
2015-12-02 13:20:22 -08:00
<!-- Activity -->
2016-01-29 07:36:49 -08:00
<div
2016-02-03 13:24:13 -08:00
class="oh pr m20t text-gray size-12 text-center"
ng-show="!index.loadingWallet && !index.txHistory[0] && !index.updatingTxHistory && !index.txHistoryError && !index.updateError" translate>
No transactions yet
2015-12-02 13:20:22 -08:00
</div>
<div class="oh pr" ng-show="index.txHistory[0] || index.txProgress > 5">
2016-02-23 13:11:42 -08:00
<h4 class="title" ng-click="index.startSearch(); search=''" ng-show="!index.isSearching">
<span translate>Activity</span>
<i class="dib m5l size-16 pointer fi-magnifying-glass"></i>
</h4>
2015-12-10 07:44:40 -08:00
<div ng-show="index.updatingTxHistory && index.txProgress > 5">
<div class="row p20 text-center">
<div class="columns large-12 medium-12 small-12 m10b">
<div class="spinner">
<div class="rect1"></div>
<div class="rect2"></div>
<div class="rect3"></div>
<div class="rect4"></div>
<div class="rect5"></div>
</div>
</div>
<div class="size-12 text-gray m20t">
<div translate>{{index.txProgress}} transactions downloaded</div>
<div translate>Updating transaction history. Please stand by.</div>
</div>
</div>
2016-02-22 12:33:41 -08:00
</div>
2016-01-29 07:36:49 -08:00
<div ng-if="index.txHistory[0] && index.updatingTxHistory && index.newTx" class="row collapse last-transactions-content animated fadeInDown">
2015-12-10 07:44:40 -08:00
<div class="large-6 medium-6 small-6 columns size-14">
<div class="m10r left">
<img src="img/icon-new.svg" width="40">
</div>
<div class="m10t" style="background:#eee; width: 8em; margin-left: 52px; line-height:0.6em">
<span>&nbsp;</span>
</div>
<div style="margin-top:5px; background:#eee; width: 6em; margin-left: 52px; line-height:0.6em">
<span>&nbsp;</span>
</div>
</div>
2015-12-10 07:44:40 -08:00
</div>
2016-01-29 07:36:49 -08:00
2016-02-18 11:26:02 -08:00
<div ng-show="index.isSearching" class="row searchBar">
<div class="small-11 columns">
<div class="searchLabel">
2016-02-15 07:50:21 -08:00
<i class="fi-magnifying-glass size-14"></i>
2016-02-18 12:55:57 -08:00
<form>
2016-02-18 11:26:02 -08:00
<input name="search"
type="search"
2016-02-19 07:26:12 -08:00
ng-change="index.updateSearchInput(search)"
2016-02-18 11:26:02 -08:00
placeholder="{{'Search transactions' | translate}}"
ng-model="search">
</input>
2016-02-15 07:50:21 -08:00
</form>
2016-02-15 07:50:21 -08:00
</div>
</div>
2016-02-18 11:26:02 -08:00
<div class="small-1 columns">
2016-02-19 07:26:12 -08:00
<a ng-click="index.cancelSearch()" translate>Cancel</a>
2016-02-18 11:26:02 -08:00
</div>
2016-02-05 11:55:09 -08:00
</div>
<div ng-repeat="btx in index.txHistorySearchResults track by btx.txid"
fast-click callback-fn="home.openTxModal(btx)"
2015-12-02 13:20:22 -08:00
class="row collapse last-transactions-content">
2015-12-03 07:34:58 -08:00
<div class="large-6 medium-6 small-6 columns size-14">
<div class="m10r left">
2015-12-04 07:26:40 -08:00
<img src="img/icon-receive-history.svg" alt="sync" width="40" ng-show="btx.action == 'received'">
<img src="img/icon-sent-history.svg" alt="sync" width="40" ng-show="btx.action == 'sent'">
2015-12-03 07:34:58 -08:00
<img src="img/icon-moved.svg" alt="sync" width="40" ng-show="btx.action == 'moved'">
</div>
<div class="m10t">
<span ng-show="btx.action == 'received'" translate>Received</span>
<span ng-show="btx.action == 'sent'">
{{index.addressbook[btx.addressTo]}}
<span ng-show="!index.addressbook[btx.addressTo] && btx.message">
<span class="ellipsis">{{btx.message}}</span>
</span>
<span ng-show="!index.addressbook[btx.addressTo] && !btx.message">
<span translate> Sent</span>
</span>
</span>
<span ng-show="btx.action == 'moved'" translate>Moved</span>
<span class="label tu warning radius" ng-show="btx.action == 'invalid'" translate>Invalid</span>
</div>
2015-12-02 13:20:22 -08:00
</div>
2016-02-23 08:19:37 -08:00
<div class="large-5 medium-5 small-5 columns text-right" >
<span class="size-16" ng-class="{'text-bold': btx.recent}">
2015-12-02 13:20:22 -08:00
<span ng-if="btx.action == 'received'">+</span>
<span ng-if="btx.action == 'sent'">-</span>
<span class="size-12" ng-if="btx.action == 'invalid'" translate>
(possible double spend)
</span>
<span ng-if="btx.action != 'invalid'">
{{btx.amountStr}}
</span>
</span>
2015-12-03 07:34:58 -08:00
<div class="size-12 text-gray">
2015-12-02 13:20:22 -08:00
<time ng-if="btx.time">{{btx.time * 1000 | amTimeAgo}}</time>
<span translate class="text-warning"
ng-show="!btx.time && (!btx.confirmations || btx.confirmations == 0)">
Unconfirmed
</span>
</div>
</div>
2015-12-03 07:34:58 -08:00
<div class="large-1 medium-1 small-1 columns text-right m10t">
2015-12-02 13:20:22 -08:00
<i class="icon-arrow-right3 size-18"></i>
</div>
</div>
2016-02-18 11:26:02 -08:00
<div class="row m20t text-center" ng-show="index.historyRendering && !index.isSearching">
2015-12-02 13:20:22 -08:00
<div class="columns large-12 medium-12 small-12">
<div class="spinner">
<div class="rect1"></div>
<div class="rect2"></div>
<div class="rect3"></div>
<div class="rect4"></div>
<div class="rect5"></div>
</div>
</div>
</div>
2015-12-04 06:01:23 -08:00
<div class="m20t text-center">
2016-01-29 07:36:49 -08:00
<a class="text-gray size-12"
ng-show="index.historyShowMore"
ng-click="index.showMore()">
2016-03-22 12:37:55 -07:00
<span translate>Show more</span>
<span ng-if="!index.isSearching">
({{index.completeHistory.length - index.txHistory.length}})
2016-03-22 12:37:55 -07:00
</span>
<span ng-if="index.isSearching">
2016-02-23 11:21:09 -08:00
({{index.result.length - index.txHistorySearchResults.length}})
2016-03-22 12:37:55 -07:00
</span>
2016-02-22 12:33:41 -08:00
<i class="icon-arrow-down4"></i>
2015-12-04 06:01:23 -08:00
</a>
</div>
2015-12-02 13:20:22 -08:00
</div>
2015-05-07 07:39:29 -07:00
<div class="extra-margin-bottom"></div>
2015-05-06 12:10:16 -07:00
</div> <!-- END WalletHome -->
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
<!--
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
receive
2015-04-26 23:33:57 -07:00
2015-05-06 12:10:16 -07:00
-->
<div id="receive" class="receive tab-view">
2015-05-06 12:10:16 -07:00
2015-11-20 10:54:27 -08:00
<div ng-show="index.needsBackup" class="p60t columns text-center">
<div class="circle-icon">
<i class="fi-alert size-48"></i>
2015-04-23 08:27:43 -07:00
</div>
2015-12-11 13:06:13 -08:00
<h5 translate>Backup Needed</h5>
2015-11-23 11:07:53 -08:00
<p class="text-gray m20b columns" translate>
2016-01-29 07:36:49 -08:00
Before receiving funds, it is necessary backup your wallet. If you lose this device, it is impossible to access your funds without a backup.
2015-11-20 10:54:27 -08:00
</p>
<button class="m20t button black expand round"
ng-click="$root.go('backup')" ng-style="{'background-color':index.backgroundColor}" >
<span translate>Backup now</span>
2016-02-12 04:52:16 -08:00
</button>
2015-04-23 08:27:43 -07:00
</div>
2015-11-11 13:15:21 -08:00
<div ng-show="!index.needsBackup">
<div class="box-notification m20t" ng-show="home.addrError">
<span class="text-warning">
{{home.addrError|translate}}
</span>
</div>
2015-05-06 12:10:16 -07:00
<div class="row">
<!-- Address-->
<div class="large-12 columns">
<h2 class="text-center m10t" translate>My Bitcoin address</h2>
<div class="text-center" ng-click="home.copyToClipboard(home.addr)" ng-show="home.addr || home.generatingAddress">
<qrcode size="220" data="bitcoin:{{home.addr}}"></qrcode>
2016-01-20 04:59:41 -08:00
<div ng-show="home.generatingAddress" style="position:relative; top:-226px; height:0px">
<div style="height:220px; width:220px; margin:auto; background: white">
<div class="spinner" style="margin-top:85px">
<div class="rect1"></div>
<div class="rect2"></div>
<div class="rect3"></div>
<div class="rect4"></div>
<div class="rect5"></div>
2015-05-06 12:10:16 -07:00
</div>
</div>
</div>
<div class="m10t" >
<h4 ng-class="{'enable_text_select': !index.isCordova}" class="size-12">
{{home.generatingAddress ? '...' : home.addr}}
</h4>
2015-05-06 12:10:16 -07:00
</div>
</div>
</div>
</div>
<div class="row m20t">
<div class="small-12 columns" ng-show="index.isCordova && home.addr">
2016-02-12 04:52:16 -08:00
<button class="button outline light-gray small round expand"
ng-click="home.shareAddress(home.addr)"
ng-disabled="home.generatingAddress">
2016-02-10 07:34:14 -08:00
<span translate>Share address</span>
2016-02-12 04:52:16 -08:00
</button>
2016-02-10 07:34:14 -08:00
</div>
<div class="small-12 columns" ng-show="home.addr">
<button class="button expand small round m10b" ng-click="home.openCustomizedAmountModal(home.addr)"
ng-style="{'background-color':index.backgroundColor}"
ng-disabled="home.generatingAddress">
2016-01-05 11:04:24 -08:00
<span translate>Request a specific amount</span>
2016-02-12 04:52:16 -08:00
</button>
2016-01-05 11:04:24 -08:00
</div>
2016-02-10 07:34:14 -08:00
</div>
<div class="row m10t" ng-show="home.addr" >
2016-02-10 07:34:14 -08:00
<div class="large-12 columns">
2016-02-10 10:35:08 -08:00
<div class="line-t size-10 text-gray m10b p10t">
<span translate> Share this wallet address to receive payments. To protect your privacy, new addresses are generated automatically once you use them.</span>
2016-02-11 10:50:34 -08:00
<a ng-show="!home.blockUx && !home.generatingAddress" ng-click="home.setAddress(true)" translate>Generate new address</a>
2016-02-10 07:34:14 -08:00
</div>
2015-05-06 12:10:16 -07:00
</div>
</div>
2015-05-06 12:10:16 -07:00
</div>
2015-05-07 07:39:29 -07:00
<div class="extra-margin-bottom"></div>
2015-05-06 12:10:16 -07:00
</div> <!-- END Receive -->
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
<!--
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
send
-->
<div id="send" class="send tab-view">
2015-12-02 11:51:56 -08:00
<div class="pr p25b">
2015-05-06 12:10:16 -07:00
<h4 class="title m0">
2015-12-02 05:29:44 -08:00
<available-balance></available-balance>
2016-02-22 12:33:41 -08:00
<span
ng-show="home.lockedCurrentFeePerKb || home.blockUx || home.lockAmount"
2016-02-22 14:56:53 -08:00
class="text-gray" translate>Send All</span>
<a
2016-02-22 14:56:53 -08:00
ng-show="index.availableBalanceSat > 0 && !home.lockedCurrentFeePerKb && !home.blockUx && !home.lockAmount"
2016-02-22 12:33:41 -08:00
ng-click="home.sendAll(index.totalBytesToSendMax, index.availableBalanceSat)"
2015-06-19 11:09:15 -07:00
translate> Send All
2015-06-22 10:35:16 -07:00
</a>
2016-02-19 08:29:41 -08:00
<div ng-show="!home.paymentExpired && home._paypro">
2016-02-10 07:59:31 -08:00
<span translate>Payment expires</span>
2016-03-22 12:37:55 -07:00
<time> {{home.remainingTimeStr}}</time>
2016-02-10 07:59:31 -08:00
</div>
2015-05-06 12:10:16 -07:00
</h4>
2015-12-02 05:29:44 -08:00
<div class="camera-icon" ng-show="index.isComplete">
2016-01-29 07:36:49 -08:00
<qr-scanner on-scan="home.onQrCodeScanned(data)"></qr-scanner>
2015-12-02 05:29:44 -08:00
</div>
2015-05-06 12:10:16 -07:00
</div>
2016-02-01 11:18:44 -08:00
<div class="box-notification m20t" ng-show="home.error" ng-click="home.resetError()">
<span class="text-warning">
{{home.error|translate}}
</span>
</div>
2015-05-06 12:10:16 -07:00
<div class="row m20t">
2016-01-29 07:36:49 -08:00
<div class="large-12 large-centered columns">
2016-02-19 11:12:23 -08:00
<form name="sendForm" ng-disabled="home.blockUx || home.onGoingProcess" novalidate>
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
<div ng-hide="home._paypro || home.hideAddress">
<div class="row collapse">
<label for="address" class="left" >
<span translate>To</span>
</label>
<span ng-hide="sendForm.address.$pristine">
<span class="has-error right size-12" ng-show="sendForm.address.$invalid && _address">
<i class="icon-close-circle size-14"></i>
<span class="vm" translate>Not valid</span>
</span>
2016-03-11 11:50:48 -08:00
<small class="right text-primary" ng-show="!sendForm.address.$invalid">
2015-05-06 12:10:16 -07:00
<i class="icon-checkmark-circle size-14"></i>
</small>
2015-04-23 08:27:43 -07:00
</span>
2015-05-06 12:10:16 -07:00
</div>
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
<div class="input">
2015-10-22 14:43:32 -07:00
<input ng-show="sendForm.address.$invalid" class="m0" type="text" id="address" name="address" ng-disabled="home.blockUx || home.lockAddress" ng-attr-placeholder="{{'Bitcoin address'|translate}}" ng-model="_address" valid-address required ng-focus="home.formFocus('address')" ng-blur="home.formFocus(false)">
2015-10-30 14:34:34 -07:00
<div class="addressbook-input" ng-show="!sendForm.address.$invalid && _address">
{{index.addressbook[_address] || _address}}
</div>
2016-01-29 07:36:49 -08:00
<a class="postfix size-12 m0 text-gray"
2015-12-08 06:50:28 -08:00
ng-style="{'color':index.backgroundColor}"
2016-02-10 13:49:55 -08:00
fast-click callback-fn="home.openDestinationAddressModal(index.otherWallets, _address)">
<i class="icon-wallet text-bold size-18"></i>
2015-06-29 08:54:07 -07:00
</a>
2015-05-06 12:10:16 -07:00
</div>
2015-04-23 08:27:43 -07:00
</div>
2015-05-06 12:10:16 -07:00
<div ng-show="home._paypro && !home.hideAddress">
<div class="row collapse" ng-click="home.openPPModal(home._paypro)">
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
<label for="domain">
<span translate>Payment to</span>
</label>
2015-04-23 08:27:43 -07:00
2015-05-06 12:10:16 -07:00
<div class="input block">
<input class="p45li" type="text" id="domain" name="domain" ng-model="home._paypro.domain" ng-disabled="1">
2015-09-18 08:07:51 -07:00
<i ng-show="home._paypro.verified && home._paypro.caTrusted" class="fi-lock color-greeni"></i>
<i ng-show="!home._paypro.caTrusted" class="fi-unlock color-yellowi"></i>
2015-05-06 12:10:16 -07:00
</div>
2015-04-23 08:27:43 -07:00
</div>
</div>
2015-05-06 12:10:16 -07:00
<div class="row" ng-init="home.hideAlternative()" ng-hide="home.hideAmount">
<div class="large-12 medium-12 columns">
<div class="right" ng-hide="sendForm.amount.$pristine && !sendForm.amount.$modelValue ">
<span class="has-error right size-12" ng-if="sendForm.amount.$invalid">
<i class="icon-close-circle size-14"></i>
<span clas="vm" translate>Not valid</span>
</span>
2015-08-07 13:21:22 -07:00
<small class="text-primary right" ng-if="!sendForm.amount.$invalid && !sendForm.alternative.$invalid">
2015-05-06 12:10:16 -07:00
<i class="icon-checkmark-circle size-14"></i>
</small>
</div>
<div ng-if="!home.canShowAlternative()">
<label for="amount">
<span translate>Amount</span>
</label>
<div class="input">
2015-12-04 10:43:03 -08:00
<input type="number" id="amount" ng-disabled="home.blockUx || home.lockAmount" name="amount" ng-attr-placeholder="{{'Amount in'|translate}} {{home.unitName}}" ng-minlength="0.00000001" ng-maxlength="10000000000" ng-model="_amount" valid-amount required autocomplete="off" ng-focus="home.formFocus('amount')" ng-blur="home.formFocus(false)">
2015-08-13 08:59:19 -07:00
<input type="number" id="alternative" name="alternative" ng-model="_alternative" style="display:none">
2015-12-01 11:54:44 -08:00
<a class="postfix button" ng-style="{'background-color':index.backgroundColor}" ng-click="home.showAlternative()">{{home.unitName}}</a>
2015-05-06 12:10:16 -07:00
</div>
</div>
<div ng-if="home.canShowAlternative()">
2015-12-04 10:43:03 -08:00
<label for="alternative"><span translate>Amount</span> [{{ home.alternativeIsoCode }}]
2015-05-06 12:10:16 -07:00
</label>
<div class="input">
2015-12-04 10:43:03 -08:00
<input type="number" id="alternative" ng-disabled="home.blockUx || !home.isRateAvailable || home.lockAmount" name="alternative" ng-attr-placeholder="{{'Amount in'|translate}} {{ home.alternativeName }}" ng-model="_alternative" required autocomplete="off" ng-focus="home.formFocus('amount')" ng-blur="home.formFocus(false)">
2015-08-13 08:59:19 -07:00
<input type="number" id="amount" name="amount" ng-model="_amount" style="display:none">
2015-12-01 11:54:44 -08:00
<a class="postfix button black" ng-click="home.hideAlternative()"> {{ home.alternativeIsoCode }}</a>
2015-05-06 12:10:16 -07:00
</div>
2015-04-23 08:27:43 -07:00
</div>
</div>
2015-05-06 12:10:16 -07:00
</div>
<div class="row" ng-hide="home.hideNote">
2015-05-06 12:10:16 -07:00
<div class="large-12 columns">
<label for="comment"><span translate>Note</span>
<small translate ng-hide="!sendForm.comment.$pristine">optional</small>
<small translate class="has-error" ng-show="sendForm.comment.$invalid && !sendForm.comment.$pristine">too long!</small>
2015-04-23 08:27:43 -07:00
</label>
<div class="input">
2015-05-06 12:10:16 -07:00
<textarea id="comment" ng-disabled="home.blockUx" name="comment"
ng-maxlength="500" ng-model="_comment" ng-focus="home.formFocus('msg')"
2016-02-01 09:03:38 -08:00
ng-blur="home.formFocus(false)"></textarea>
2015-04-23 08:27:43 -07:00
</div>
</div>
</div>
2015-05-06 12:10:16 -07:00
<div class="row" ng-show="!home.onGoingProcess">
2015-06-19 11:00:27 -07:00
<div class="large-6 medium-6 small-6 columns" ng-show="!home.blockUx && (home._paypro || home.lockAddress || home.lockAmount)">
2016-02-19 11:12:23 -08:00
<a fast-click callback-fn="home.resetForm(sendForm)" class="button expand outline dark-gray round" translate>Cancel</a>
2015-05-06 12:10:16 -07:00
</div>
2015-06-19 11:00:27 -07:00
<div class="columns" ng-class="{'small-6 medium-6 large-6':(home._paypro || home.lockAddress || home.lockAmount)}">
2016-03-30 08:52:19 -07:00
<button class="button black round expand" ng-disabled="sendForm.$invalid || home.blockUx || index.isOffline || home.paymentExpired"
2016-02-22 11:37:00 -08:00
ng-style="{'background-color':index.backgroundColor}" fast-click callback-fn="home.submitForm()" translate>
2015-05-06 12:10:16 -07:00
Send
</button>
2015-04-23 08:27:43 -07:00
</div>
</div>
2015-05-06 12:10:16 -07:00
</form>
</div>
</div>
2015-05-07 07:39:29 -07:00
<div class="extra-margin-bottom"></div>
2015-05-06 12:10:16 -07:00
</div> <!-- END Send -->
2015-04-23 12:54:19 -07:00
<div id="{{view.id}}" class="{{view.class}} tab-view" ng-repeat="view in index.addonViews" ng-include="view.template">
</div>
2015-05-06 12:10:16 -07:00
</div>
2015-03-06 07:00:10 -08:00
</div>
2015-05-07 14:35:54 -07:00
<div class="extra-margin-bottom"></div>
<div ng-include="'views/includes/menu.html'" ng-show="!index.noFocusedWallet && !$root.shouldHideMenuBar"></div>