29 padding: 0 20px !important;
47 border-top: 12px solid #3c454b;
48 border-right: 12px solid #3c454b;
49 transform: rotate(45deg);
61 text-transform: uppercase;
76 word-break: break-all;
90 text-transform: uppercase;
111 <div class="warp bg-gray">
112 <section class="header bg-header">
113 <i class="iconfont icon-back" @click="$router.go(-1)"></i>
114 <p>{{ title || $t('transfer.confirmTransaction') }}</p>
117 <div class="scorll-panel">
118 <section class="content bg-white">
122 <td class="col label">{{ $t('transfer.from') }}</td>
123 <td class="col value">{{account.alias}}</td>
126 <td class="col label">{{ $t('transfer.to') }}</td>
127 <td class="col value">{{transaction.toShort}}</td>
130 <td class="col label">{{ $t('transfer.asset') }}</td>
131 <td class="col value asset">
132 {{full? transaction.asset:shortAddress(transaction.asset)}}
133 <a v-on:click="full = !full" class="view-link">
134 {{ full? $t('transfer.hide'): $t('transfer.view') }}
138 <div class="divider"></div>
140 <td class="col label">{{ $t('transfer.transferAmount') }}</td>
141 <td class="col value">{{transaction.amount}}<span v-if="assetAlias" class="uint">{{assetAlias}}</span></td>
144 <td class="col label">{{ $t('transfer.fee') }}</td>
145 <td class="col value">{{transaction.fee}}<span class="uint">BTM</span></td>
149 <td class="col label">{{ $t('transfer.total') }}</td>
150 <td class="col value">
151 <!--<p class="fee-intro">{{ $t('transfer.totalTip') }}</p>-->
152 <!--{{(assetAlias && assetAlias.toUpperCase() === 'BTM')?Number(transaction.amount)+Number(transaction.fee): Number(transaction.amount)}}<span v-if="assetAlias" class="uint">{{assetAlias}}</span>-->
153 {{totalAmount}}<span v-if="assetAlias" class="uint">{{assetAlias}}</span>
160 <section class="content bg-white">
162 <div class="form-item">
163 <label class="form-item-label">{{ $t('transfer.confirmPassword') }}</label>
164 <div class="form-item-content">
165 <input type="password" v-model="password" autofocus>
171 <div class="row" style="margin: 20px;">
172 <div class="btn bg-green" @click="transfer">{{ $t('transfer.confirm') }}</div>
181 import address from "@/utils/address";
182 import transaction from "@/models/transaction";
183 import BigNumber from "bignumber.js"
184 import account from "@/models/account";
185 import modalPasswd from "@/components/modal-passwd";
186 import getLang from "@/assets/language/sdk";
187 import { LocalStream } from 'extension-streams';
188 import { mapGetters } from 'vuex'
210 beforeRouteEnter (to, from, next) {
212 if(from.name === 'cross-chain') {
213 vm.title = vm.$t('crossChain.detail')
221 if(this.assetAlias && this.assetAlias.toUpperCase() === 'BTM'){
222 const n = new BigNumber(this.transaction.amount)
223 return n.plus(this.transaction.fee).toNumber()
225 return Number(this.transaction.amount)
235 shortAddress: function (add) {
236 return address.short(add)
238 transfer: function () {
239 if (this.password == "") {
241 body: this.$t("transfer.emptyPassword")
245 let loader = this.$loading.show({
246 // Optional parameters
249 onCancel: this.onCancel
253 const address = this.netType === 'vapor'? this.account.vpAddress: this.account.address;
254 console.log(this.rawData)
256 Promise.all(this.rawData.map( (rawdata) => transaction.transfer(this.account.guid, rawdata, this.password, address)))
259 if(this.$route.params.type == 'popup'){
260 LocalStream.send({method:'transfer',action:'success', message:ret[ret.length-1]});
265 body: this.$t("transfer.success")
267 this.$router.push('/')
268 if(this.transaction.type === 'toVapor'){
269 account.setupNet(`${this.net}vapor`)
275 body: getLang(error.message, this.language)
280 let params = this.$route.params;
282 this.account = params.account;
283 this.transaction = params.transaction;
284 this.transaction.toShort = params.transaction.to;
285 this.rawData = params.rawData;
287 this.assetAlias = params.assetAlias;