2016-09-20 06:02:28 -07:00
< ion-modal-view id = "txp-details" ng-controller = "txpDetailsController" ng-init = "init()" >
2016-10-11 13:48:03 -07:00
< ion-header-bar align-title = "center" class = "bar-royal" >
2016-09-07 09:34:47 -07:00
< button class = "button button-clear" ng-click = "close()" >
Close
< / button >
< div class = "title" translate >
Payment Proposal
2016-06-15 08:47:01 -07:00
< / div >
2016-09-20 06:02:28 -07:00
< button class = "button button-clear" ng-click = "reject()" ng-disabled = "loading" ng-if = "isShared && tx.pendingForUs" >
Reject
< / button >
2016-06-15 08:47:01 -07:00
< / ion-header-bar >
2015-12-03 08:43:59 -08:00
2016-10-13 06:03:09 -07:00
< ion-content ng-init = "updateCopayerList()" ng-class = "{'slide-to-pay': tx.pendingForUs && canSign && isCordova}" >
2016-09-20 06:02:28 -07:00
< div class = "list" >
< div class = "item head" >
< div class = "sending-label" >
2016-10-11 11:45:54 -07:00
< img src = "img/sending-icon.svg" >
2016-09-20 06:02:28 -07:00
< span translate > Sending< / span >
< / div >
< div class = "amount-label" >
2016-10-11 11:45:54 -07:00
< div class = "amount" > {{displayAmount}} < span class = "unit" > {{displayUnit}}< / span > < / div >
2016-09-20 06:02:28 -07:00
< div class = "alternative" ng-show = "tx.alternativeAmountStr" > {{tx.alternativeAmountStr}}< / div >
< / div >
2015-12-03 08:43:59 -08:00
2016-09-27 08:05:22 -07:00
< div class = "text-center m10t assertive" ng-if = "tx.removed" translate >
2016-09-07 09:34:47 -07:00
The payment was removed by creator
2016-05-27 11:16:25 -07:00
< / div >
2016-08-18 06:08:23 -07:00
2016-09-27 08:05:22 -07:00
< div class = "text-center m10t" ng-show = "tx.status != 'pending'" >
< div ng-show = "tx.status == 'accepted' && !tx.isGlidera" >
< div class = "m10b positive" translate > Payment accepted, but not yet broadcasted< / div >
2016-05-27 11:16:25 -07:00
2016-09-27 08:05:22 -07:00
< button class = "button button-positive button-block" ng-click = "broadcast(tx)" ng-disabled = "loading" >
< i class = "icon ion-ios-cloud-upload-outline" > < / i >
< span translate > Broadcast Payment< / span >
< / button >
< / div >
< div ng-show = "tx.status == 'accepted' && tx.isGlidera" >
< div class = "m10h" translate > Payment accepted. It will be broadcasted by Glidera. In case there is a problem, it can be deleted 6 hours after it was created.< / div >
< / div >
< div class = "balanced" ng-show = "tx.status == 'broadcasted'" translate > Payment Sent< / div >
< div class = "assertive" ng-show = "tx.status=='rejected'" translate > Payment Rejected< / div >
2016-05-27 11:16:25 -07:00
< / div >
2016-09-07 09:34:47 -07:00
< / div >
2015-08-20 12:43:03 -07:00
2016-09-27 08:05:22 -07:00
< div class = "item assertive text-center" ng-show = "!currentSpendUnconfirmed && tx.hasUnconfirmedInputs" translate >
Warning: this transaction has unconfirmed inputs
2016-09-20 06:02:28 -07:00
< / div >
< div class = "info" >
< div class = "item" >
2016-10-11 12:36:28 -07:00
< span class = "label" translate > To< / span >
2016-09-20 06:02:28 -07:00
< span class = "payment-proposal-to" copy-to-clipboard = "tx.toAddress" >
2016-10-11 12:22:11 -07:00
< img src = "img/icon-bitcoin-small.svg" >
2016-09-27 08:57:46 -07:00
< contact ng-if = "!tx.hasMultiplesOutputs" class = "ellipsis" address = "{{tx.toAddress}}" > < / contact >
2016-09-20 06:02:28 -07:00
< span ng-if = "tx.hasMultiplesOutputs" translate > Multiple recipients< / span >
< / span >
< / div >
2015-12-03 08:43:59 -08:00
2016-09-20 06:02:28 -07:00
< div ng-show = "tx.hasMultiplesOutputs" class = "item" ng-click = "showMultiplesOutputs = !showMultiplesOutputs" >
2016-05-27 11:16:25 -07:00
< span class = "text-gray" translate > Recipients< / span >
< span class = "right" > {{tx.recipientCount}}
2016-09-07 09:34:47 -07:00
< i ng-show = "showMultiplesOutputs" class = "icon ion-ios-arrow-up" > < / i >
< i ng-show = "!showMultiplesOutputs" class = "icon ion-ios-arrow-up" > < / i >
2015-03-06 07:00:10 -08:00
< / span >
2016-09-20 06:02:28 -07:00
< / div >
2016-05-27 11:16:25 -07:00
2016-09-07 09:34:47 -07:00
< div class = "item" ng-show = "tx.hasMultiplesOutputs && showMultiplesOutputs"
2016-05-27 11:16:25 -07:00
ng-repeat="output in tx.outputs" ng-include="'views/includes/output.html'">
< / div >
2015-03-06 07:00:10 -08:00
2016-09-20 06:02:28 -07:00
< div class = "item" >
2016-10-11 12:36:28 -07:00
< span class = "label" translate > From< / span >
2016-10-11 12:22:11 -07:00
< div class = "wallet" >
< i class = "icon big-icon-svg" >
2016-09-27 08:05:22 -07:00
< img src = "img/icon-wallet.svg" ng-style = "{'background-color': wallet.color}" class = "bg" / >
< / i >
2016-10-11 12:22:11 -07:00
< div > {{wallet.name}}< / div >
< / div >
2016-09-20 06:02:28 -07:00
< / div >
2016-10-11 12:36:28 -07:00
< div class = "item single-line" >
< span class = "label" translate > Created by< / span >
2016-09-27 08:05:22 -07:00
< span class = "item-note" >
2016-10-11 16:00:16 -07:00
{{tx.creatorName}} < time > {{ (tx.ts || tx.createdOn ) * 1000 | amDateFormat:'MM/DD/YYYY hh:mm a'}}< / time >
2016-09-20 06:02:28 -07:00
< / span >
< / div >
< div class = "item" ng-show = "tx.message" >
2016-09-27 08:05:22 -07:00
{{'Memo'|translate}}
< span class = "item-note" >
2016-09-20 06:02:28 -07:00
{{tx.message}}
< / span >
< / div >
2016-10-11 12:36:28 -07:00
< div class = "item single-line" >
< span class = "label" translate > Fee< / span >
2016-09-27 08:05:22 -07:00
< span class = "item-note" >
2016-09-20 06:02:28 -07:00
{{tx.feeStr}}
2016-05-27 11:16:25 -07:00
< / span >
2016-09-07 09:34:47 -07:00
< / div >
2015-04-21 22:48:00 -07:00
2016-09-07 09:34:47 -07:00
< div ng-if = "tx.paypro" >
< div class = "item item-divider" translate > Payment details< / div >
2016-09-27 08:05:22 -07:00
< div class = "item" >
{{'To'|translate}}
< span class = "item-note" >
2016-05-27 11:16:25 -07:00
< span >
< span ng-show = "tx.merchant.pr.ca" > < i class = "fi-lock" > < / i > {{tx.paypro.domain}}< / span >
< span ng-show = "!tx.merchant.pr.ca" > < i class = "fi-unlock" > < / i > {{tx.paypro.domain}}< / span >
< / span >
< contact address = "{{tx.toAddress}}" ng-hide = "tx.merchant" > < / contact >
< / span >
2016-09-27 08:05:22 -07:00
< / div >
< div class = "item" ng-if = "paymentExpired" >
{{'Expired'|translate}}
< span class = "item-note" >
2016-05-27 11:16:25 -07:00
< time > {{tx.paypro.expires * 1000 | amTimeAgo }}< / time >
< / span >
2016-09-27 08:05:22 -07:00
< / div >
< div class = "item" ng-if = "!paymentExpired" >
{{'Expires'|translate}}
< span class = "item-note" >
2016-05-27 11:16:25 -07:00
< time > {{expires}}< / time >
< / span >
2016-09-27 08:05:22 -07:00
< / div >
< div class = "item" >
{{'Merchant Message'|translate}}
< span class = "item-note" > {{tx.paypro.pr.pd.memo}}< / span >
< / div >
2016-09-07 09:34:47 -07:00
< / div >
2016-09-20 06:02:28 -07:00
< div ng-if = "actionList[0]" >
< div class = "item item-divider" translate > Timeline< / div >
2016-10-11 16:00:16 -07:00
< div class = "item timeline-item" ng-class = "{'action-created' : a.type == 'created' || a.type == 'accept', 'action-rejected' : a.type == 'reject'}" ng-repeat = "a in actionList | orderBy: 'time' track by $index" >
< div class = "timeline-content" >
< div class = "timeline-content__icon" >
< div class = "rejected" ng-if = "a.type === 'reject'" > !< / div >
< div ng-if = "a.type !== 'reject'" > {{$index + 1}}< / div >
2016-09-20 06:02:28 -07:00
< / div >
2016-10-11 16:00:16 -07:00
< div class = "timeline-content__label" >
< div class = "action" > {{a.description}}< / div >
< div class = "name" > {{a.by}}< / div >
2016-09-20 06:02:28 -07:00
< / div >
2016-10-11 16:00:16 -07:00
< div >
< span class = "item-note" >
< time > {{ a.time * 1000 | amDateFormat:'hh:mm a'}}< / time >
< / span >
2016-10-11 15:05:00 -07:00
< / div >
2016-10-11 16:00:16 -07:00
< / div >
2016-05-27 11:16:25 -07:00
< / div >
< / div >
2016-09-20 06:02:28 -07:00
< / div >
< / div >
2016-10-10 15:52:59 -07:00
< click-to-accept
ng-click="onConfirm(statusChangeHandler)"
2016-10-13 06:03:09 -07:00
ng-if="tx.pendingForUs & & canSign & & !paymentExpired & & !isCordova"
2016-10-10 15:52:59 -07:00
click-send-status="sendStatus">
2016-09-27 08:05:22 -07:00
Click to accept
2016-10-10 15:52:59 -07:00
< / click-to-accept >
2016-09-27 08:05:22 -07:00
< div class = "m30t text-center" ng-if = "tx.canBeRemoved || (tx.status == 'accepted' && !tx.broadcastedOn)" >
2016-10-11 15:24:01 -07:00
< div class = "size-12 padding proposal-deletion-help" ng-show = "!tx.isGlidera && isShared" translate >
2016-09-07 09:34:47 -07:00
* A payment proposal can be deleted if 1) you are the creator, and no other copayer has signed, or 2) 24 hours have passed since the proposal was created.
< / div >
2016-09-27 08:05:22 -07:00
< button class = "button button-assertive button-clear" ng-click = "remove()" ng-disabled = "loading" >
2016-09-07 09:34:47 -07:00
< i class = "fi-trash size-14 m5r" > < / i >
< span translate > Delete Payment Proposal< / span >
< / button >
2016-05-27 11:16:25 -07:00
< / div >
< / ion-content >
2016-10-10 15:52:59 -07:00
< slide-to-accept
2016-10-13 06:03:09 -07:00
ng-if="tx.pendingForUs & & canSign & & !paymentExpired & & isCordova"
2016-10-10 15:52:59 -07:00
slide-on-confirm="onConfirm()"
slide-send-status="sendStatus">
Slide to accept
< / slide-to-accept >
< slide-to-accept-success
slide-success-show="sendStatus === 'success'"
slide-success-on-confirm="onSuccessConfirm()"
>
Payment Sent
< / slide-to-accept-success >
2016-05-27 11:16:25 -07:00
< / ion-modal-view >