This commit is contained in:
magmahindenburg 2017-07-06 11:27:29 +09:00
commit 98c93e3c6f
133 changed files with 5157 additions and 3511 deletions

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Recent Transactions'|translate}}

View file

@ -1,4 +1,4 @@
<ion-view id="view-add">
<ion-view id="view-add" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Add wallet' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="addresses" class="addr">
<ion-view id="addresses" class="addr" hide-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Wallet Addresses' | translate}}</ion-nav-title>
<ion-nav-back-button>
@ -33,9 +33,9 @@
<div class="item item-icon-right view-all" ng-if="viewAll.value" ng-click="viewAllAddresses()">
<span translate>View All Addresses</span>
<i class="icon ion-ios-arrow-thin-right"></i>
</div>
</div>
<div class="item item-divider item-icon-right" ng-click="newAddress()">
<div class="item item-divider item-icon-right" ng-click="newAddress()">
<span translate>Unused Addresses</span>
<i class="icon ion-ios-plus-empty"></i>
</div>
@ -70,6 +70,34 @@
<div class="addr-balance">{{w.balanceStr}}</div>
</div>
</div>
<div ng-if="allUtxosNb">
<div class="item item-divider" translate>
Wallet Inputs
</div>
<div class="item" >
<span translate> Total wallet inputs </span>
<div class="addr-path">
{{allUtxosNb}} [{{allUtxosSum}}]
</div>
</div>
<div class="item" >
<span translate> Low amount inputs </span>
<div class="addr-path">
{{lowUtxosNb}} [{{ lowUtxosSum }}]
</div>
</div>
<div class="item" >
<span translate> Approximate Bitcoin network fee to transfer wallet's balance (with normal priority) </span>
<div class="addr-path">
{{minFeePer}} [{{minFee}}]
</div>
</div>
</div>
</div>
</div>
</ion-content>

View file

@ -1,4 +1,4 @@
<ion-view id="advanced-settings" class="settings">
<ion-view id="advanced-settings" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Advanced Settings' | translate}}</ion-nav-title>
<ion-nav-back-button>
@ -16,7 +16,7 @@
<div class="item item-divider"></div>
<ion-toggle class="has-comment" ng-show="!isWP" ng-model="recentTransactionsEnabled.value" toggle-class="toggle-balanced" ng-change="recentTransactionsChange()">
<ion-toggle class="has-comment" ng-model="recentTransactionsEnabled.value" toggle-class="toggle-balanced" ng-change="recentTransactionsChange()">
<span class="toggle-label" translate>Recent Transaction Card</span>
</ion-toggle>
<div class="comment" translate>
@ -25,7 +25,7 @@
<div class="item item-divider"></div>
<ion-toggle ng-model="hideNextSteps.value" toggle-class="toggle-balanced" ng-change="nextStepsChange()">
<ion-toggle ng-model="hideNextSteps.value" ng-if="!isWindowsPhoneApp" toggle-class="toggle-balanced" ng-change="nextStepsChange()">
<span class="toggle-label" translate>Hide Next Steps Card</span>
</ion-toggle>
</div>

View file

@ -1,4 +1,4 @@
<ion-view hide-tabs id="addresses" class="addr">
<ion-view id="addresses" class="addr" hide-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'All Addresses' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>
@ -16,7 +16,7 @@
</ion-spinner>
<h2 ng-if="item.amount">
{{item.amount | currency : '$ ' : 2}} {{item.currency}}
</h2>
</h2>
<p>
<span class="assertive" ng-if="item.status == 'FAILURE' || item.status == 'RESEND'">Error</span>
<span class="assertive" ng-if="item.status == 'expired'">Expired</span>

View file

@ -1,4 +1,4 @@
<ion-view id="bitpayCard">
<ion-view id="bitpayCard" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>
@ -48,7 +48,7 @@
<i class="icon ion-ios-arrow-thin-up get-started__arrow"></i>
<h1 translate>Get started</h1>
<div class="get-started__text" translate>
Your BitPay Card is ready. Add funds to your card to start using your card at stores and ATMs worldwide.
Your BitPay Card is ready. Add funds to your card to start using it at stores and ATMs worldwide.
</div>
</div>
<div class="list" ng-show="!bitpayCard.getStarted">
@ -64,8 +64,8 @@
</label>
<div ng-if="bitpayCard.bitpayCardTransactionHistoryConfirming[0]">
<label class="item status-label" ng-click="bitpayCard.openExternalLink('https://help.bitpay.com/bitpay-card/why-do-you-require-one-blockchain-confirmation-for-bitpay-card-loads')">
<div translate>
Confirming
<div>
<span translate>Confirming</span>
<i class="icon">
<img src="img/icon-help-support.svg" class="bg"/>
</i>
@ -77,8 +77,8 @@
</div>
<div ng-if="bitpayCard.bitpayCardTransactionHistoryPreAuth[0]">
<label class="item status-label" ng-click="bitpayCard.openExternalLink('https://help.bitpay.com/bitpay-card/why-was-i-overcharged-on-my-bitpay-card-account-why-is-there-a-hold-on-my-account')">
<div translate>
Pre-Auth Holds
<div>
<span translate>Pre-Auth Holds</span>
<i class="icon">
<img src="img/icon-help-support.svg" class="bg"/>
</i>
@ -89,7 +89,7 @@
</div>
</div>
<div ng-if="bitpayCard.bitpayCardTransactionHistoryCompleted[0]">
<label class="item status-label">
<label class="item status-label" ng-if="bitpayCard.bitpayCardTransactionHistoryPreAuth[0] || bitpayCard.bitpayCardTransactionHistoryConfirming[0]">
<div translate>
Completed
</div>

View file

@ -53,23 +53,17 @@
</ion-content>
<click-to-accept
ng-disabled="!wallet"
ng-click="buyConfirm()"
ng-if="!isCordova"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="false"
no-matching-wallet="false">
is-disabled="!wallet">
Confirm purchase
</click-to-accept>
<slide-to-accept
ng-disabled="!wallet"
ng-if="isCordova"
slide-on-confirm="buyConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="false"
no-matching-wallet="false">
is-disabled="!wallet">
Slide to buy
</slide-to-accept>
<slide-to-accept-success

View file

@ -17,7 +17,7 @@
<div class="amount-label">
<div class="amount">{{amountUnitStr}}</div>
<div class="alternative" ng-if="buyPrice">
<span ng-show="isFiat">{{buyRequestInfo.amount.amount}} {{buyRequestInfo.amount.currency}}</span>
<span ng-show="isFiat">{{buyRequestInfo.amount.amount}} {{buyRequestInfo.amount.currency}}</span>
@ ${{buyPrice.amount}} per BTC
</div>
</div>
@ -59,7 +59,7 @@
{{fee.type}} fee
</span>
<span class="item-note">
{{fee.amount.amount}} {{fee.amount.currency}}
{{fee.amount.amount}} {{fee.amount.currency}}
</span>
</div>
<div class="item">
@ -74,23 +74,17 @@
</ion-content>
<click-to-accept
ng-disabled="!selectedPaymentMethodId.value || !buyRequestInfo || !wallet"
ng-click="buyConfirm()"
ng-if="!isCordova && buyRequestInfo"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="!selectedPaymentMethodId.value"
no-matching-wallet="!buyRequestInfo">
is-disabled="!selectedPaymentMethodId.value || !buyRequestInfo || !wallet">
Confirm purchase
</click-to-accept>
<slide-to-accept
ng-disabled="!selectedPaymentMethodId.value || !buyRequestInfo || !wallet"
ng-if="isCordova && buyRequestInfo"
slide-on-confirm="buyConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="!selectedPaymentMethodId.value"
no-matching-wallet="!buyRequestInfo">
is-disabled="!selectedPaymentMethodId.value || !buyRequestInfo || !wallet">
Slide to buy
</slide-to-accept>
<slide-to-accept-success

View file

@ -17,8 +17,8 @@
<div class="amount-label">
<div class="amount">{{amountUnitStr}}</div>
<div class="alternative">
<span ng-show="!isFiat">{{buyInfo.subtotal}} {{buyInfo.currency}}</span>
<span ng-show="isFiat">{{buyInfo.qty}} BTC</span>
<span ng-show="!isFiat">{{buyInfo.subtotal}} {{buyInfo.currency}}</span>
<span ng-show="isFiat">{{buyInfo.qty}} BTC</span>
@ ${{buyInfo.price}} per BTC
</div>
</div>
@ -64,23 +64,17 @@
</ion-content>
<click-to-accept
ng-disabled="!buyInfo || !wallet"
ng-click="buyConfirm()"
ng-if="!isCordova && buyInfo"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="false"
no-matching-wallet="!buyInfo">
is-disabled="!buyInfo || !wallet">
Confirm purchase
</click-to-accept>
<slide-to-accept
ng-disabled="!buyInfo || !wallet"
ng-if="isCordova && buyInfo"
slide-on-confirm="buyConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="false"
no-matching-wallet="!buyInfo">
is-disabled="!buyInfo || !wallet">
Slide to buy
</slide-to-accept>
<slide-to-accept-success

View file

@ -1,4 +1,4 @@
<ion-view id="buy-and-sell">
<ion-view id="buy-and-sell" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="coinbase">
<ion-view id="coinbase" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -7,24 +7,24 @@
</ion-nav-back-button>
</ion-nav-bar>
<ion-content ng-class="{'add-bottom-for-cta': !insufficientFunds && !noMatchingWallet}">
<ion-content class="add-bottom-for-cta">
<div class="list">
<div class="item head">
<div class="sending-label">
<img src="img/icon-tx-sent-outline.svg">
<span translate ng-if="!useSendMax">Sending</span>
<span translate ng-if="useSendMax">Sending maximum amount</span>
<span translate ng-if="!tx.sendMax">Sending</span>
<span translate ng-if="tx.sendMax">Sending maximum amount</span>
</div>
<div class="amount-label">
<div class="amount">{{displayAmount || '...'}} <span class="unit">{{displayUnit}}</span></div>
<div class="alternative">{{alternativeAmountStr || '...'}}</div>
<div class="amount">{{tx.amountValueStr || '...'}} <span class="unit">{{tx.amountUnitStr}}</span></div>
<div class="alternative">{{tx.alternativeAmountStr || '...'}}</div>
</div>
</div>
<div class="info">
<div class="item single-line" ng-if="paypro">
<div class="item single-line" ng-if="tx.paypro">
<span class="label" translate>Payment Expires:</span>
<span class="item-note" ng-if="!paymentExpired.value">{{remainingTimeStr.value}}</span>
<span class="item-note" ng-if="paymentExpired.value" ng-style="{'color': 'red'}" translate>Expired</span>
<span class="item-note" ng-if="!paymentExpired">{{remainingTimeStr}}</span>
<span class="item-note" ng-if="paymentExpired" ng-style="{'color': 'red'}" translate>Expired</span>
</div>
<div class="item">
@ -32,36 +32,36 @@
<span class="payment-proposal-to" ng-if="!recipientType">
<i class="icon icon-svg abs-v-center icon-bitcoinlogoplain"></i>
<div copy-to-clipboard="toAddress" ng-if="!paypro" class="ellipsis">
<contact ng-if="!toName" address="{{toAddress}}"></contact>
<span class="m15l size-14" ng-if="toName">{{toName}}</span>
<div copy-to-clipboard="tx.toAddress" ng-if="!tx.paypro" class="ellipsis">
<contact ng-if="!tx.toName" address="{{tx.toAddress}}"></contact>
<span class="m15l size-14" ng-if="tx.toName">{{tx.toName}}</span>
</div>
<div ng-if="paypro" ng-click="openPPModal(paypro)" class="m15l size-14 w100p pointer">
<i ng-show="paypro.verified && paypro.caTrusted" class="ion-locked" style="color:green"></i>
<i ng-show="!paypro.caTrusted" class="ion-unlocked" style="color:red"></i>
<span class="ellipsis" ng-show="!toName">{{paypro.domain || paypro.toAddress}}</span>
<span ng-show="toName">{{toName}}</span>
<div ng-if="tx.paypro" ng-click="openPPModal(tx.paypro)" class="m15l size-14 w100p pointer">
<i ng-show="tx.paypro.verified && tx.paypro.caTrusted" class="ion-locked" style="color:green"></i>
<i ng-show="!tx.paypro.caTrusted" class="ion-unlocked" style="color:red"></i>
<span class="ellipsis" ng-show="!tx.toName">{{tx.paypro.domain || tx.paypro.toAddress}}</span>
<span ng-show="tx.toName">{{tx.toName}}</span>
</div>
<!-- <contact ng-if="!tx.hasMultiplesOutputs" class="ellipsis" address="{{toAddress}}"></contact>
<!-- <contact ng-if="!tx.hasMultiplesOutputs" class="ellipsis" address="{{tx.toAddress}}"></contact>
<span ng-if="tx.hasMultiplesOutputs" translate>Multiple recipients</span> -->
</span>
<div class="wallet" ng-if="recipientType == 'wallet'">
<i class="icon big-icon-svg">
<img src="img/icon-wallet.svg" ng-class="{'wallet-background-color-default': !toColor}" ng-style="{'background-color': toColor}" class="bg"/>
</i>
<div copy-to-clipboard="toAddress" class="ellipsis">
<contact ng-if="!toName" address="{{toAddress}}"></contact>
<span ng-if="toName" class="wallet-name">{{toName}}</span>
<div copy-to-clipboard="tx.toAddress" class="ellipsis">
<contact ng-if="!tx.toName" address="{{tx.toAddress}}"></contact>
<span ng-if="tx.toName" class="wallet-name">{{tx.toName}}</span>
</div>
</div>
<div ng-if="recipientType == 'contact' && !isChromeApp" class="gravatar-contact toggle" ng-click="toggleAddress()">
<gravatar class="send-gravatar" name="{{toName}}" height="30" width="30" email="{{toEmail}}"></gravatar>
<span ng-if="toName && !showAddress">{{toName}}</span>
<span ng-if="toName && showAddress">{{toAddress}}</span>
<gravatar class="send-gravatar" name="{{tx.toName}}" height="30" width="30" email="{{toEmail}}"></gravatar>
<span ng-if="tx.toName && !showAddress">{{tx.toName}}</span>
<span ng-if="tx.toName && showAddress">{{tx.toAddress}}</span>
</div>
</div>
<a class="item item-icon-right" ng-hide="!useSendMax && (insufficientFunds || noMatchingWallet)" ng-click="showWalletSelector()">
<a class="item item-icon-right" ng-hide="!wallets" ng-click="showWalletSelector()">
<span class="label" translate>From</span>
<div class="wallet" ng-if="wallet">
<i class="icon big-icon-svg">
@ -77,46 +77,46 @@
</div>
<i class="icon bp-arrow-right"></i>
</a>
<div class="item item-icon-right" ng-if="!insufficientFunds && !noMatchingWallet" ng-click="chooseFeeLevel()">
<span class="label">{{'Fee:' | translate}} {{feeLevel | translate}}</span>
<span class="m10l">{{fee || '...'}}</span>
<div class="item item-icon-right" ng-if="wallet" ng-click="chooseFeeLevel(tx, wallet)">
<span class="label">{{'Fee:' | translate}} {{tx.feeLevelName | translate}}</span>
<span class="m10l">{{tx.txp[wallet.id].feeStr || '...'}}</span>
<span class="item-note m10l">
<span>{{feeFiat || '...'}}&nbsp;<span class="fee-rate" ng-if="feeRateStr" translate>- {{feeRateStr}} of the transaction</span></span>
<span>{{tx.txp[wallet.id].alternativeFeeStr || '...'}}&nbsp;
<span class="fee-rate" ng-if="tx.txp[wallet.id].feeRatePerStr"> &middot;
<i class="ion-alert-circled warn" ng-show="tx.txp[wallet.id].feeToHigh"></i> &nbsp;
<span class="fee-rate" ng-class="{'warn':tx.txp[wallet.id].feeToHigh}" translate> {{tx.txp[wallet.id].feeRatePerStr}} of the sending amount </span>
</span>
</span>
</span>
<i class="icon bp-arrow-right"></i>
</div>
<a class="item item-icon-right" ng-if="!insufficientFunds && !noMatchingWallet" ng-click="showDescriptionPopup()">
<a class="item item-icon-right" ng-if="wallet" ng-click="showDescriptionPopup(tx)">
<span class="label" translate>Add Memo</span>
<span class="item-note m10l">
{{description}}
{{tx.description}}
</span>
<i class="icon bp-arrow-right"></i>
</a>
<div class="text-center" ng-show="noMatchingWallet">
<span class="badge badge-energized" translate>No wallets available</span>
</div>
<div class="text-center" ng-show="insufficientFunds">
<span class="badge badge-energized" translate>Insufficient funds</span>
<div class="text-center" ng-show="noWalletMessage">
<span class="badge badge-energized">{{noWalletMessage}}</span>
</div>
</div>
</div>
</ion-content>
<click-to-accept
ng-click="approve(statusChangeHandler)"
ng-if="!isCordova"
ng-click="approve(tx, wallet, statusChangeHandler)"
ng-if="!isCordova || isWindowsPhoneApp"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="insufficientFunds"
no-matching-wallet="noMatchingWallet">
is-disabled="!wallet">
{{buttonText}}
</click-to-accept>
<slide-to-accept
ng-if="isCordova && (wallet && !insufficientFunds && !noMatchingWallet)"
slide-on-confirm="onConfirm()"
ng-if="isCordova && !isWindowsPhoneApp && wallet"
slide-on-confirm="approve(tx, wallet, statusChangeHandler)"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="insufficientFunds"
no-matching-wallet="noMatchingWallet">
is-disabled="!wallet">
{{buttonText}}
</slide-to-accept>
<slide-to-accept-success
@ -125,14 +125,14 @@
slide-success-hide-on-confirm="true">
<span ng-show="wallet.m == 1 && (wallet.canSign() || wallet.isPrivKeyExternal())" translate>Payment Sent</span>
<span ng-show="wallet.m > 1 && (wallet.canSign() || wallet.isPrivKeyExternal())" translate>Proposal Created</span>
<span ng-show="!wallet.canSign() && !wallet.isPrivKeyExternal()" translate>Transaction created</span>
<span ng-show="!wallet.canSign() && !wallet.isPrivKeyExternal()" translate>Transaction Created</span>
</slide-to-accept-success>
<wallet-selector
wallet-selector-title="walletSelectorTitle"
wallet-selector-wallets="wallets"
wallet-selector-selected-wallet="wallet"
wallet-selector-show="showWallets"
wallet-selector-show="walletSelector"
wallet-selector-on-select="onWalletSelect">
</wallet-selector>

View file

@ -1,14 +1,13 @@
<ion-view id="copayers-invitation">
<ion-view id="copayers-invitation" hide-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>
<ion-nav-title>{{wallet.name}}</ion-nav-title>
<ion-nav-buttons side="secondary">
<button class="button-share ng-hide" ng-show="isCordova && secret" ng-click="shareSecret()">
<i class="icon"
<i class="icon"
ng-class="{
'ion-ios-upload-outline': shareIcon == 'iOS',
'ion-ios-upload-outline': shareIcon == 'iOS',
'ion-android-share-alt': shareIcon != 'iOS'
}"></i>
</button>
@ -34,7 +33,7 @@
</div>
</div>
<button ng-if="secret" class="button-cancel" ng-click="showDeletePopup()">
<span translate>Cancel invitation</span>
<span translate>Cancel invitation</span>
</button>
</div>
</div>

View file

@ -1,4 +1,4 @@
<ion-view id="export">
<ion-view id="export" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Export wallet' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="glidera">
<ion-view id="glidera" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>
@ -13,7 +13,7 @@
Refresh
</button>
</ion-nav-buttons>
<ion-content scroll="false" class="ng-hide" ng-show="!account.token">
<ion-content scroll="false" class="ng-hide" ng-show="!account.token">
<div class="integration-onboarding">
<div class="integration-onboarding-logo">
<img src="img/glidera-logo.png">

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="import" class="settings">
<ion-view id="import" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Import Wallet' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,21 +1,16 @@
<div class="list card">
<div class="item item-icon-right item-heading">
<span translate>Cards</span>
<a ui-sref="tabs.bitpayCardIntro"><i class="icon ion-ios-plus-empty list-add-button"></i></a>
</div>
<div>
<a ng-repeat="card in bitpayCardItems track by $index"
ui-sref="tabs.bitpayCard({id:card.id})"
class="item item-sub item-icon-left item-big-icon-left item-icon-right">
<i class="icon big-icon-svg">
<div class="bg icon-bitpay-card"></div>
</i>
<span>BitPay Visa&reg; Card ({{card.lastFourDigits}})</span>
<p>{{card.balance ? card.currencySymbol + card.balance : 'Add funds to get started'|translate}} {{card.updatedOn ? (' &middot; ' + (card.updatedOn * 1000 | amTimeAgo)) : ''}}</p>
<i class="icon bp-arrow-right"></i>
</a>
</div>
<div class="item item-icon-right item-heading">
<span translate>Cards</span>
<a ui-sref="tabs.bitpayCardIntro"><i class="icon ion-ios-plus-empty list-add-button"></i></a>
</div>
<div>
<a ng-repeat="card in bitpayCardItems track by $index"
ui-sref="tabs.bitpayCard({id:card.id})"
class="item item-sub item-icon-left item-big-icon-left item-icon-right">
<i class="icon big-icon-svg">
<div class="bg icon-bitpay-card"></div>
</i>
<span>BitPay Visa&reg; Card ({{card.lastFourDigits}})</span>
<p>{{card.balance ? card.currencySymbol + card.balance : 'Add funds to get started'|translate}} {{card.updatedOn ? (' &middot; ' + (card.updatedOn * 1000 | amTimeAgo)) : ''}}</p>
<i class="icon bp-arrow-right"></i>
</a>
</div>

View file

@ -1,5 +1,4 @@
<div class="list card" ng-controller="buyAndSellCardController">
<div ng-controller="buyAndSellCardController">
<div class="item item-sub item-icon-right item-heading">
<span translate>Buy bitcoin</span>
<a ui-sref="tabs.buyandsell"><i class="icon ion-ios-plus-empty list-add-button"></i></a>

View file

@ -1,4 +1,4 @@
<button ng-disabled="!hasWalletChosen || insufficientFunds || noMatchingWallet" class="click-to-accept__button button button-standard button-primary" ng-class="{disable: sendStatus}">
<button ng-disabled="isDisabled" class="click-to-accept__button button button-standard button-primary" ng-class="{disable: sendStatus}">
<span ng-if="!sendStatus">
<ng-transclude></ng-transclude>
</span>

View file

@ -1,19 +1,18 @@
<div class="list card" ng-controller="homeIntegrationsController">
<div class="item item-icon-right item-heading" ng-click="toggle()" >
<span translate>Services</span>
<i class="icon bp-arrow-up" ng-show="!hide"></i>
<i class="icon bp-arrow-down" ng-show="hide"></i>
</div>
<div ng-show="!hide">
<div ng-repeat="service in services track by $index">
<a ui-sref="{{service.sref}}" class="item item-sub item-icon-left item-big-icon-left item-icon-right next-step">
<i class="icon big-icon-svg">
<div class="bg {{service.icon}}"></div>
</i>
<span>{{service.title || service.name}}</span>
<i class="icon bp-arrow-right"></i>
</a>
</div>
<div ng-controller="homeIntegrationsController">
<div class="item item-icon-right item-heading" ng-click="toggle()" >
<span translate>Services</span>
<i class="icon bp-arrow-up" ng-show="!hide"></i>
<i class="icon bp-arrow-down" ng-show="hide"></i>
</div>
<div ng-show="!hide">
<div ng-repeat="service in services track by $index">
<a ui-sref="{{service.sref}}" class="item item-sub item-icon-left item-big-icon-left item-icon-right next-step">
<i class="icon big-icon-svg">
<div class="bg {{service.icon}}"></div>
</i>
<span>{{service.title || service.name}}</span>
<i class="icon bp-arrow-right"></i>
</a>
</div>
</div>
</div>

View file

@ -1,19 +1,18 @@
<div class="list card" ng-controller="nextStepsController">
<div class="item item-icon-right item-heading" ng-click="toggle()" >
<span translate>Next steps</span>
<i class="icon bp-arrow-up" ng-show="!hide"></i>
<i class="icon bp-arrow-down" ng-show="hide"></i>
</div>
<div ng-show="!hide">
<div ng-repeat="service in services track by $index">
<a ui-sref="{{service.sref}}" class="item item-sub item-icon-left item-big-icon-left item-icon-right next-step">
<i class="icon big-icon-svg">
<div class="bg {{service.icon}}"></div>
</i>
<span>{{service.title || service.name}}</span>
<i class="icon bp-arrow-right"></i>
</a>
</div>
<div ng-controller="nextStepsController">
<div class="item item-icon-right item-heading" ng-click="toggle()" >
<span translate>Next steps</span>
<i class="icon bp-arrow-up" ng-show="!hide"></i>
<i class="icon bp-arrow-down" ng-show="hide"></i>
</div>
<div ng-show="!hide">
<div ng-repeat="service in services track by $index">
<a ui-sref="{{service.sref}}" class="item item-sub item-icon-left item-big-icon-left item-icon-right next-step">
<i class="icon big-icon-svg">
<div class="bg {{service.icon}}"></div>
</i>
<span>{{service.title || service.name}}</span>
<i class="icon bp-arrow-right"></i>
</a>
</div>
</div>
</div>

View file

@ -1,6 +1,6 @@
<div
class="slide-success__background"
ng-class="{'fill-screen': fillScreen}">
ng-class="{'fill-screen': fillScreen, 'slide-success__windows-background': isWindowsPhoneApp}">
</div>
<div ng-disabled="wallet" class="slide-success__content">

View file

@ -26,6 +26,11 @@
<i class="icon"><img src="img/icon-warning.png" width="20px"></i>
<span class="comment" translate>Low fees</span>
</div>
<div class="low-fees" ng-if="btx.lowAmount">
<i class="icon"><img src="img/icon-warning.png" width="20px"></i>
<span class="comment" translate>Amount too low to spend</span>
</div>
</div>
<div ng-show="btx.action == 'sent'" class="ellipsis">

View file

@ -1,4 +1,4 @@
<ion-view id="join" class="settings">
<ion-view id="join" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Startup Lock' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,13 +1,13 @@
<ion-modal-view id="settings-fee" class="settings" ng-controller="preferencesFeeController" ng-init="init()">
<ion-modal-view id="settings-fee" class="settings" ng-controller="preferencesFeeController" >
<ion-header-bar align-title="center" class="bar-royal">
<button class="button button-clear" ng-click="hideModal()">
Close
</button>
<div class="title">
{{'Bitcoin Network Fee Policy'|translate}}
</div>
<button class="button button-clear" ng-click="chooseNewFee()">
OK
</button>
</ion-header-bar>
<ion-content>
<ion-content ng-init="init(network)">
<div class="settings-explanation">
<div class="estimates">
<div>
@ -20,6 +20,7 @@
<span class="fee-rate" ng-if="feePerSatByte">{{feePerSatByte}} satoshis/byte</span>
<span ng-if="loadingFee">...</span>
</div>
<div ng-if="network!='livenet'">[{{network}}]</span>
</div>
</div>
<div class="fee-policies">
@ -27,8 +28,5 @@
{{level|translate}}
</ion-radio>
</div>
<div class="m20t">
<button class="button button-standard button-primary" ng-click="chooseNewFee()" translate>Save</button>
</div>
</ion-content>
</ion-modal-view>

View file

@ -9,51 +9,51 @@
<div class="list">
<div class="item head">
<div class="amount-label">
<div class="amount">{{displayAmount || '...'}} <span class="unit">{{displayUnit}}</span></div>
<div class="alternative">{{alternativeAmountStr || '...'}}</div>
<div class="amount">{{tx.amountValueStr || '...'}} <span class="unit">{{tx.amountUnitStr}}</span></div>
<div class="alternative">{{tx.alternativeAmountStr || '...'}}</div>
</div>
</div>
<div class="info">
<div class="item single-line" ng-if="paypro.domain">
<div class="item single-line" ng-if="tx.paypro.domain">
<span class="label">{{'Pay To'|translate}}</span>
<span class="item-note">
{{paypro.domain}}
{{tx.paypro.domain}}
</span>
</div>
<div class="item single-line" ng-if="paypro.toAddress">
<div class="item single-line" ng-if="tx.paypro.toAddress">
<span class="label">{{'Address'|translate}}</span>
<span class="item-note m10l ellipsis">
{{paypro.toAddress}}
{{tx.paypro.toAddress}}
</span>
</div>
<div class="item">
<span class="label">{{'Certified by'|translate}}</span>
<span class="item-note w100p">
<span ng-show="paypro.caTrusted">
<span ng-show="tx.paypro.caTrusted">
<i class="ion-locked" style="color:green"></i>
{{paypro.caName}} {{'(Trusted)' | translate}}</span>
{{tx.paypro.caName}} {{'(Trusted)' | translate}}</span>
</span>
<span ng-show="!paypro.caTrusted">
<span ng-show="paypro.selfSigned">
<span ng-show="!tx.paypro.caTrusted">
<span ng-show="tx.paypro.selfSigned">
<i class="ion-unlocked" style="color:red"></i> <span translate>Self-signed Certificate</span>
</span>
<span ng-show="!paypro.selfSigned">
<i class="ion-locked" style="color:yellow"></i>{{paypro.caName}}<br>
<span ng-show="!tx.paypro.selfSigned">
<i class="ion-locked" style="color:yellow"></i>{{tx.paypro.caName}}<br>
<span translate>WARNING: UNTRUSTED CERTIFICATE</span>
</span>
</span>
</span>
</div>
<div class="item" ng-if="paypro.memo">
<div class="item" ng-if="tx.paypro.memo">
<span class="label">{{'Memo'|translate}}</span>
<span class="item-note w100p">
{{paypro.memo}}
{{tx.paypro.memo}}
</span>
</div>
<div class="item single-line" ng-if="paypro.expires">
<div class="item single-line" ng-if="tx.paypro.expires">
<span class="label">{{'Expires'|translate}}</span>
<span class="item-note">
{{paypro.expires * 1000 | amTimeAgo }}
{{tx.paypro.expires * 1000 | amTimeAgo }}
</span>
</div>
</div>

View file

@ -1,6 +1,6 @@
<ion-modal-view id="pin" ng-controller="pinController">
<ion-header-bar align-title="center" class="bar-royal">
<button ng-if="action != 'check'" class="button button-back button-clear" ng-click="hideModal()">
<button ng-if="action != 'check'" class="button button-back button-clear" ng-click="hideModal()" translate>
Close
</button>
</ion-header-bar>

View file

@ -19,7 +19,7 @@
<span translate>Sending</span>
</div>
<div class="amount-label">
<div class="amount">{{displayAmount}} <span class="unit">{{displayUnit}}</span></div>
<div class="amount">{{tx.amountValueStr}} <span class="unit">{{tx.amountUnitStr}}</span></div>
<div class="alternative" ng-show="tx.alternativeAmountStr">{{tx.alternativeAmountStr}}</div>
</div>
@ -97,10 +97,11 @@
{{tx.message}}
</span>
</div>
<div class="item single-line">
<span class="label" translate>Fee</span>
<span class="item-note">
{{tx.feeStr}}
<div class="item">
<span class="label">{{'Fee:' | translate}} {{tx.feeLevelStr | translate}}</span>
<span class="m10l">{{tx.feeStr || '...'}}</span>
<span class="item-note m10l">
<span>{{tx.feeFiatStr || '...'}}&nbsp;<span class="fee-rate" ng-if="tx.feeRateStr" translate>- {{tx.feeRateStr}} of the transaction</span></span>
</span>
</div>
@ -169,13 +170,13 @@
<click-to-accept
ng-click="onConfirm(statusChangeHandler)"
ng-if="tx.pendingForUs && canSign && !paymentExpired && !isCordova"
ng-if="tx.pendingForUs && canSign && !paymentExpired && (!isCordova || isWindowsPhoneApp)"
click-send-status="sendStatus"
has-wallet-chosen="true">
{{buttonText}}
</click-to-accept>
<slide-to-accept
ng-if="tx.pendingForUs && canSign && !paymentExpired && isCordova"
ng-if="tx.pendingForUs && canSign && !paymentExpired && isCordova && !isWindowsPhoneApp"
slide-on-confirm="onConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="true">
@ -184,6 +185,6 @@
<slide-to-accept-success
slide-success-show="sendStatus === 'success'"
slide-success-on-confirm="onSuccessConfirm()">
{{'Payment Sent' | translate}}
{{successText}}
</slide-to-accept-success>
</ion-modal-view>

View file

@ -1,48 +0,0 @@
<div
class="topbar-container"
ng-include="'views/includes/topbar.html'"
ng-init="titleSection='Choose wallet'; closeToHome = true">
</div>
<div class="content p20v row payment-uri" ng-controller="paymentUriController as payment">
<div class="large-12 columns" ng-init="payment.init()">
<div class="panel text-center" ng-if="!payment.uri">
<h1 translate>Bitcoin URI is NOT valid!</h1>
</div>
<div ng-if="payment.uri" ng-init="payment.getWallets(payment.uri.network)">
<h1 translate>Make a payment to</h1>
<div class="panel size-14">
<div class="ellipsis"><b translate>Address</b>: {{payment.uri.address.toString()}}</div>
<div ng-show="payment.uri.amount"><b translate>Amount</b>: {{payment.uri.amount}}</div>
<div ng-show="payment.uri.message"><b translate>Message</b>: {{payment.uri.message}}</div>
<div ng-show="payment.uri.network == 'testnet'"><b translate>Network</b>: {{payment.uri.network}}</div>
</div>
<div ng-if="!wallets || !wallets.length">
<div class="box-notification">
<span class="text-warning">
<b translate>There are no wallets to make this payment</b>
<span ng-show="payment.uri.network == 'testnet'">[testnet]</span>
</span>
</div>
</div>
<div ng-if="wallets.length">
<h2 translate>Select a wallet</h2>
<ul class="no-bullet">
<li class="panel" ng-repeat="w in wallets">
<a ng-click="payment.selectWallet(w.id)">
<div class="avatar-wallet"
ng-class="{'wallet-background-color-default': !w.color}" ng-style="{'background-color':w.color}">
<i class="icon-wallet size-21"></i>
</div>
<div class="ellipsis">{{w.name || w.id}}</div>
<div class="size-12">{{w.m}} of {{w.n}}
<span ng-show="w.network=='testnet'">[Testnet]</span>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Wallet Settings'|translate}}
@ -18,7 +18,7 @@
</span>
<i class="icon bp-arrow-right"></i>
</a>
<a class="item item-icon-right" ui-sref="tabs.preferences.preferencesColor">
<a ng-if="!isWindowsPhoneApp" class="item item-icon-right" ui-sref="tabs.preferences.preferencesColor">
<span translate>Color</span>
<span class="item-note">
<span class="settings-color-block"

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{title}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'More Options' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Wallet Name'|translate}}

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Alternative Currency'|translate}}

View file

@ -1,4 +1,4 @@
<ion-view id="bitpayServicesPreferences">
<ion-view id="bitpayServicesPreferences" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>Wallet Service URL</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="settings-color" class="settings">
<ion-view id="settings-color" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Wallet Color'|translate}}

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Delete Wallet' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{externalSource.longName}}</ion-nav-title>
<ion-nav-back-button>
@ -13,7 +13,7 @@
</div>
</div>
<div ng-if="externalSource.isEmbeddedHardware">
<div ng-if="externalSource.isEmbeddedHardware">
<div ng-if="!hardwareConnected" class="warning centered">
<span translate>Hardware not connected.</span><br>
<span translate>Check installation and retry.</span>

View file

@ -1,4 +1,4 @@
<ion-view id="settings-fee" class="settings">
<ion-view id="settings-fee" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Bitcoin Network Fee Policy'|translate}}

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Transaction History' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Wallet Information' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="preferences-language" class="settings">
<ion-view id="preferences-language" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Language'|translate}}

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Session Log' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="tab-notifications" class="settings">
<ion-view id="tab-notifications" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Notifications' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Unit'|translate}}

View file

@ -1,5 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>
{{'Pending Proposals'|translate}}

View file

@ -17,11 +17,11 @@
<div class="amount-label">
<div class="amount">{{amountUnitStr}}</div>
<div class="alternative" ng-if="sellPrice">
<span ng-show="isFiat">{{sellRequestInfo.amount.amount}} {{sellRequestInfo.amount.currency}}</span>
<span ng-show="isFiat">{{sellRequestInfo.amount.amount}} {{sellRequestInfo.amount.currency}}</span>
@ ${{sellPrice.amount}} per BTC
</div>
</div>
</div>
</div>
<div class="info">
@ -62,16 +62,16 @@
will be sent to your Coinbase account, and sold when Coinbase accepts the transaction (usually one
hour).
</div>
<div class="label" ng-if="sellRequestInfo">Estimated sale value:
<div class="label" ng-if="sellRequestInfo">Estimated sale value:
<strong>
{{sellRequestInfo.total.amount | currency : '' : 2}}
{{sellRequestInfo.total.amount | currency : '' : 2}}
{{sellRequestInfo.total.currency}}
</strong>
</div>
<div class="label" ng-if="sellRequestInfo">Still sell if price fall until:
<div class="label" ng-if="sellRequestInfo">Still sell if price fall until:
<strong>
{{(sellRequestInfo.total.amount -
(selectedPriceSensitivity.data.value / 100) * sellRequestInfo.total.amount) | currency : '' : 2}}
{{(sellRequestInfo.total.amount -
(selectedPriceSensitivity.data.value / 100) * sellRequestInfo.total.amount) | currency : '' : 2}}
{{sellRequestInfo.total.currency}}
</strong>
</div>
@ -107,23 +107,17 @@
</ion-content>
<click-to-accept
ng-disabled="!selectedPaymentMethodId.value || !sellRequestInfo || !wallet"
ng-click="sellConfirm()"
ng-if="!isCordova && sellRequestInfo"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="!selectedPaymentMethodId.value"
no-matching-wallet="!sellRequestInfo">
is-disabled="!selectedPaymentMethodId.value || !sellRequestInfo || !wallet">
Confirm sale
</click-to-accept>
<slide-to-accept
ng-disabled="!selectedPaymentMethodId.value || !sellRequestInfo || !wallet"
ng-if="isCordova && sellRequestInfo"
slide-on-confirm="sellConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="!selectedPaymentMethodId.value"
no-matching-wallet="!sellRequestInfo">
is-disabled="!selectedPaymentMethodId.value || !sellRequestInfo || !wallet">
Slide to sell
</slide-to-accept>
<slide-to-accept-success

View file

@ -17,12 +17,12 @@
<div class="amount-label">
<div class="amount">{{amountUnitStr}}</div>
<div class="alternative">
<span ng-show="!isFiat">{{sellInfo.subtotal}} {{sellInfo.currency}}</span>
<span ng-show="!isFiat">{{sellInfo.subtotal}} {{sellInfo.currency}}</span>
<span ng-show="isFiat">{{sellInfo.qty}} BTC</span>
@ ${{sellInfo.price}} per BTC
</div>
</div>
</div>
</div>
<div class="info">
@ -64,23 +64,17 @@
</ion-content>
<click-to-accept
ng-disabled="!sellInfo || !wallet"
ng-click="sellConfirm()"
ng-if="!isCordova && sellInfo"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="false"
no-matching-wallet="!sellInfo">
is-disabled="!sellInfo || !wallet">
Confirm sale
</click-to-accept>
<slide-to-accept
ng-disabled="!sellInfo || !wallet"
ng-if="isCordova && sellInfo"
slide-on-confirm="sellConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="false"
no-matching-wallet="!sellInfo">
is-disabled="!sellInfo || !wallet">
Slide to sell
</slide-to-accept>
<slide-to-accept-success

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Create Personal Wallet' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view class="settings">
<ion-view class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Create Shared Wallet' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -1,4 +1,4 @@
<ion-view id="tab-home">
<ion-view id="tab-home" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title><span class="nav-bar-title textlogo"><span class="moon-symbol"></span>itcoin.com Wallet</span></ion-nav-title>
</ion-nav-bar>
@ -10,6 +10,7 @@
spinner="ios-small"
on-refresh="onRefresh()">
</ion-refresher>
<div class="list card release ng-hide" ng-show="newRelease">
<i class="item icon big-icon-svg">
<img src="img/icon-update.svg" class="bg"/>
@ -105,10 +106,9 @@
</a>
</div>
</div>
<div class="ng-hide" ng-show="wallets[0] && bitpayCardItems.length>0" ng-include="'views/includes/bitpayCardsCard.html'"></div>
<div class="ng-hide" ng-show="wallets[0] && buyAndSellItems.length>0" ng-include="'views/includes/buyAndSellCard.html'"></div>
<div class="ng-hide" ng-show="homeIntegrations.length>0" ng-include="'views/includes/homeIntegrations.html'"></div>
<div class="ng-hide" ng-show="nextStepsItems.length>0" ng-include="'views/includes/nextSteps.html'"></div>
<div class="ng-hide list card" ng-show="wallets[0] && bitpayCardItems.length>0" ng-include="'views/includes/bitpayCardsCard.html'"></div>
<div class="ng-hide list card" ng-show="wallets[0] && buyAndSellItems.length>0" ng-include="'views/includes/buyAndSellCard.html'"></div>
<div class="ng-hide list card" ng-show="homeIntegrations.length>0" ng-include="'views/includes/homeIntegrations.html'"></div>
<div class="ng-hide list card" ng-show="nextStepsItems.length>0 && !isWindowsPhoneApp" ng-include="'views/includes/nextSteps.html'"></div>
</ion-content>
</ion-view>

View file

@ -1,11 +1,11 @@
<ion-view id="tab-receive">
<ion-view id="tab-receive" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Receive' | translate}}</ion-nav-title>
<ion-nav-buttons side="secondary">
<button class="button-share ng-hide" ng-show="wallets[0] && showShareButton" ng-click="shareAddress()">
<i class="icon"
<i class="icon"
ng-class="{
'ion-ios-upload-outline': showShareButton == 'iOS',
'ion-ios-upload-outline': showShareButton == 'iOS',
'ion-android-share-alt': showShareButton != 'iOS'
}"></i>
</button>
@ -27,7 +27,7 @@
<button class="button button-standard button-primary" ng-click="goCopayers()" translate>Open wallet</button>
</div>
</div>
<div class="address-info" ng-if="wallet && wallet.isComplete()">
<div class="address-info" ng-if="wallet && wallet.isComplete()">
<div copy-to-clipboard="addr">
<span ng-show="shouldShowReceiveAddressFromHardware()">
<button class="button button-standard button-primary" ng-click="showReceiveAddressFromHardware()">
@ -42,16 +42,16 @@
</div>
<div>
<button ng-show="addr" class="button-request" ng-click="requestSpecificAmount()">
<span translate>Request Specific amount</span>
<span translate>Request Specific amount</span>
<i class="icon ion-ios-arrow-right"></i>
</button>
</div>
<div>
<button ng-show="addr" class="button-address" ng-click="setAddress(true)">
<span translate>Generate new address</span>
<span translate>Generate new address</span>
</button>
</div>
</div>
</div>
</article>
<div class="backup" ng-if="wallets[0] && wallet && wallet.isComplete() && wallet.needsBackup" ng-click="openBackupNeededModal()">
@ -81,7 +81,7 @@
<i ng-if="!singleWallet" class="icon bp-arrow-right"></i>
</a>
</div>
</ion-content>
<wallet-selector
wallet-selector-title="walletSelectorTitle"

View file

@ -1,4 +1,4 @@
<ion-view id="tab-scan">
<ion-view id="tab-scan" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Scan' | translate}}</ion-nav-title>
<ion-nav-buttons side="primary">

View file

@ -1,4 +1,4 @@
<ion-view id="tab-send">
<ion-view id="tab-send" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Send' | translate}}</ion-nav-title>
</ion-nav-bar>

View file

@ -1,4 +1,4 @@
<ion-view id="tab-settings" class="settings">
<ion-view id="tab-settings" class="settings" show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Settings' | translate}}</ion-nav-title>
</ion-nav-bar>
@ -29,7 +29,7 @@
<span>{{'Send Feedback' | translate}}</span>
<i class="icon bp-arrow-right"></i>
</a>
<a ng-if="isCordova" class="item item-icon-left item-icon-right" ui-sref="tabs.shareApp({score: 4, skipped: true, fromSettings: true})">
<a ng-if="isCordova && !isWindowsPhoneApp" class="item item-icon-left item-icon-right" ui-sref="tabs.shareApp({score: 4, skipped: true, fromSettings: true})">
<i class="icon big-icon-svg">
<img src="img/icon-heart.svg" class="bg"/>
</i>
@ -89,7 +89,7 @@
<i class="icon bp-arrow-right"></i>
</a>
<a class="item has-setting-value item-icon-left item-icon-right" ui-sref="tabs.lockSetup" ng-if="isCordova || isDevel">
<a class="item has-setting-value item-icon-left item-icon-right" ui-sref="tabs.lockSetup" ng-if="(isCordova || isDevel) && !isWindowsPhoneApp">
<i class="icon ion-ios-locked-outline" ng-if="locked"></i>
<i class="icon ion-ios-unlocked-outline" ng-if="!locked"></i>
<span class="setting-title">{{'Lock App' | translate}}</span>

View file

@ -8,7 +8,7 @@
<ion-nav-view name="tab-receive"></ion-nav-view>
</ion-tab>
<ion-tab title="{{'Scan'|translate}}" icon-off="ico-scan" icon-on="ico-scan-selected" ui-sref="tabs.scan">
<ion-tab title="{{'Scan'|translate}}" icon-off="ico-scan" icon-on="ico-scan-selected" ng-click="chooseScanner()">
<ion-nav-view name="tab-scan"></ion-nav-view>
</ion-tab>

View file

@ -1,4 +1,4 @@
<ion-view>
<ion-view show-tabs>
<ion-nav-bar class="bar-royal">
<ion-nav-title>{{'Terms Of Use' | translate}}</ion-nav-title>
<ion-nav-back-button>

View file

@ -2,25 +2,27 @@
<ion-nav-bar class="bar-royal">
<ion-nav-back-button>
</ion-nav-back-button>
<ion-nav-title>Add funds</ion-nav-title>
<ion-nav-title>
{{'Add funds' | translate}}
</ion-nav-title>
</ion-nav-bar>
<ion-content class="add-bottom-for-cta">
<!-- SELL -->
<div class="list" ng-if="cardInfo">
<div class="list">
<div class="item head">
<div class="sending-label">
<i class="icon big-icon-svg">
<div class="bg icon-bitpay-card"></div>
</i>
<span>BitPay Card - Visa &reg; Prepaid Debit</span>
<span>BitPay Visa&reg; Card ({{lastFourDigits}})</span>
</div>
<div class="amount-label">
<div class="amount-final">{{amountUnitStr}}</div>
<div class="alternative">
<span ng-if="rate">@
{{rate | currency:cardInfo.currencySymbol:2}} per BTC</span>
<div class="alternative" ng-show="amountUnitStr">
<span ng-if="rate">@
{{rate | currency:currencySymbol:2}} {{currencyIsoCode}} per BTC</span>
<span ng-if="!rate">...</span>
</div>
</div>
@ -29,7 +31,7 @@
<div class="info">
<div class="item item-icon-right" ng-click="showWalletSelector()">
<div class="label">From</div>
<div class="label" translate>From</div>
<div class="wallet">
<i class="icon big-icon-svg">
<img src="img/icon-wallet.svg" ng-class="{'wallet-background-color-default': !wallet.color}" ng-style="{'background-color': wallet.color}" class="bg">
@ -39,20 +41,38 @@
<i class="icon bp-arrow-right"></i>
</div>
<div class="item item-divider">
Deposit into
</div>
<div class="item">
Card
<span class="item-note">
xxxx-xxxx-xxxx-{{cardInfo.lastFourDigits}}
</span>
</div>
<div class="item">
Account
<span class="item-note">
{{cardInfo.email}}
</span>
<div ng-show="totalAmountStr">
<div class="item item-divider" translate>
Details
</div>
<div class="item">
<span translate>Funds to be added</span>
<span class="item-note">
<span ng-if="amount">{{amount | currency:currencySymbol:2}} {{currencyIsoCode}}</span>
<span ng-if="!amount">...</span>
</span>
</div>
<div class="item">
<span translate>Invoice Fee</span>
<span class="item-note">
<span ng-if="invoiceFee">{{invoiceFee | currency:currencySymbol:2}} {{currencyIsoCode}}</span>
<span ng-if="!invoiceFee">...</span>
</span>
</div>
<div class="item">
<span translate>Network Fee</span>
<span class="item-note">
<span ng-if="networkFee">{{networkFee | currency:currencySymbol:2}} {{currencyIsoCode}}</span>
<span ng-if="!networkFee">...</span>
</span>
</div>
<div class="item">
<span translate>Total</span>
<span class="item-note">
<span ng-if="totalAmount">{{totalAmount | currency:currencySymbol:2}} {{currencyIsoCode}}</span>
<span ng-if="totalAmountStr">({{totalAmountStr}})</span>
</span>
</div>
</div>
</div>
</div>
@ -60,34 +80,28 @@
</ion-content>
<click-to-accept
ng-disabled="!cardInfo || !wallet"
ng-click="topUpConfirm()"
ng-if="!isCordova && cardInfo"
ng-if="!isCordova"
click-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="insufficientFunds"
no-matching-wallet="!cardInfo">
is-disabled="!wallet || !totalAmountStr">
Add funds
</click-to-accept>
<slide-to-accept
ng-disabled="!cardInfo || !wallet"
ng-if="isCordova && cardInfo"
ng-if="isCordova && wallet && totalAmountStr"
slide-on-confirm="topUpConfirm()"
slide-send-status="sendStatus"
has-wallet-chosen="wallet"
insufficient-funds="insufficientFunds"
no-matching-wallet="!cardInfo">
is-disabled="!wallet || !totalAmountStr">
Slide to confirm
</slide-to-accept>
<slide-to-accept-success
slide-success-show="sendStatus === 'success'"
slide-success-on-confirm="goBackHome()"
slide-success-hide-on-confirm="true">
<span ng-if="wallet.credentials.m == 1">Sent</span>
<span ng-if="wallet.credentials.m > 1">Success</span>
<span ng-if="wallet.credentials.m == 1" translate>Sent</span>
<span ng-if="wallet.credentials.m > 1" translate>Success</span>
<div class="m10 size-14">
<span ng-if="wallet.credentials.m == 1">Funds were added to debit card</span>
<span ng-if="wallet.credentials.m > 1">Transaction initiated</span>
<span ng-if="wallet.credentials.m == 1" translate>Funds were added to debit card</span>
<span ng-if="wallet.credentials.m > 1" translate>Transaction initiated</span>
</div>
</slide-to-accept-success>

View file

@ -24,7 +24,7 @@
<span ng-if="btx.action == 'received'" translate>Receiving</span>
</div>
<div class="amount-label">
<div class="amount">{{displayAmount}} <span class="unit">{{displayUnit}}</span></div>
<div class="amount">{{btx.amountValueStr}} <span class="unit">{{btx.amountUnitStr}}</span></div>
<div class="alternative" ng-click="showRate = !showRate">
<span ng-if="!showRate">{{btx.alternativeAmountStr}}</span>
<span ng-if="showRate">
@ -77,17 +77,23 @@
</div>
<i class="icon bp-arrow-right"></i>
</a>
<div class="item single-line" ng-click="toggleFeeFiat = !toggleFeeFiat" ng-if="btx.action != 'received'">
<div class="item" ng-if="btx.action != 'received'">
<span class="label" translate>Fee</span>
<span class="item-note">
<span ng-if="!toggleFeeFiat">{{btx.feeStr}}</span>
<span ng-if="toggleFeeFiat">{{feeFiatStr}}</span>
<span class="m10l">{{btx.feeStr || '...'}}</span>
<span class="item-note m10l">
<span>{{btx.feeFiatStr || '...'}}&nbsp;<span class="fee-rate" ng-if="btx.feeRateStr" translate>- {{btx.feeRateStr}} of the transaction</span></span>
</span>
</div>
<div class="item low-fees" ng-if="btx.action == 'received' && btx.lowFees">
<i class="icon"><img src="img/icon-warning.png" width="20px"></i>
<span translate>This transaction could take a long time to confirm or could be dropped due to the low fees set by the sender</span>
</div>
<div class="item low-fees" ng-if="btx.lowAmount">
<i class="icon"><img src="img/icon-warning.png" width="20px"></i>
<span translate>
This transaction amount is too small compared to current Bitcoin network fees. Spending these funds will need a Bitcoin network fee cost comparable to the funds itself. </span>
</div>
<div class="item single-line">
<span class="label" translate>Confirmations</span>
<span class="item-note">
@ -104,7 +110,7 @@
</div>
<ion-toggle ng-show="!btx.confirmations || btx.confirmations == 0"
class="toggle-unconfirmed"
ng-model="txNotification.value"
ng-model="txNotification.value"
toggle-class="toggle-balanced"
ng-change="txConfirmNotificationChange()">
<span class="toggle-label" translate>Notify me if confirmed</span>

View file

@ -158,7 +158,13 @@
Wallet not backed up
</a>
<div class="p60b" ng-if="wallet && wallet.isComplete() && !walletNotRegistered" style="padding-top: 1rem;">
<a class="wallet-not-backed-up-warning" ng-if="lowUtxosWarning" ui-sref="tabs.wallet.addresses({walletId:wallet.id,from: 'tabs.wallet'})" translate>
Spending this balance will need significant Bitcoin network fees
</a>
<div class="p60b" ng-if="wallet && wallet.isComplete() && !walletNotRegistered">
<div class="oh pr m20t" ng-show="wallet.incorrectDerivation">
<div class="text-center text-warning">
<i class="fi-alert"></i>
@ -167,12 +173,8 @@
</span>
</div>
</div>
<div class="list" ng-if="txps[0]">
<!-- <div class="item item-heading" translate>
<span ng-show="requiresMultipleSignatures" translate>Payment Proposals</span>
<span ng-show="!requiresMultipleSignatures" translate>Unsent transactions</span>
</div> -->
<div class="wallet-details__group-label" style="padding-bottom: 8px;">
<div ng-if="txps[0]">
<div class="wallet-details__group-label">
<span ng-show="requiresMultipleSignatures" translate>Proposals</span>
<span ng-show="!requiresMultipleSignatures" translate>Unsent transactions</span>
</div>