Browse Source

interest modal hide toggle if no zero interest utxos

v0.25
pbca26 7 years ago
parent
commit
60296b0d70
  1. 11
      react/src/components/dashboard/claimInterestModal/claimInterestModal.js
  2. 30
      react/src/components/dashboard/claimInterestModal/claimInterestModal.render.js

11
react/src/components/dashboard/claimInterestModal/claimInterestModal.js

@ -29,6 +29,7 @@ class ClaimInterestModal extends React.Component {
open: false, open: false,
isLoading: true, isLoading: true,
transactionsList: [], transactionsList: [],
displayShowZeroInterestToggle: false,
showZeroInterest: true, showZeroInterest: true,
totalInterest: 0, totalInterest: 0,
spvPreflightSendInProgress: false, spvPreflightSendInProgress: false,
@ -91,6 +92,7 @@ class ClaimInterestModal extends React.Component {
loadListUnspent() { loadListUnspent() {
let _transactionsList = []; let _transactionsList = [];
let _totalInterest = 0; let _totalInterest = 0;
let _zeroInterestUtxo = false;
if (this.props.ActiveCoin.mode === 'spv') { if (this.props.ActiveCoin.mode === 'spv') {
shepherdElectrumListunspent( shepherdElectrumListunspent(
@ -103,6 +105,10 @@ class ClaimInterestModal extends React.Component {
json = json.result; json = json.result;
for (let i = 0; i < json.length; i++) { for (let i = 0; i < json.length; i++) {
if (json[i].interest === 0) {
_zeroInterestUtxo = true;
}
_transactionsList.push({ _transactionsList.push({
address: json[i].address, address: json[i].address,
locktime: json[i].locktime, locktime: json[i].locktime,
@ -117,6 +123,7 @@ class ClaimInterestModal extends React.Component {
transactionsList: _transactionsList, transactionsList: _transactionsList,
isLoading: false, isLoading: false,
totalInterest: _totalInterest, totalInterest: _totalInterest,
displayShowZeroInterestToggle: _zeroInterestUtxo,
}); });
} }
} }
@ -138,6 +145,9 @@ class ClaimInterestModal extends React.Component {
for (let i = 0; i < json.length; i++) { for (let i = 0; i < json.length; i++) {
getRawTransaction(this.props.ActiveCoin.coin, json[i].txid) getRawTransaction(this.props.ActiveCoin.coin, json[i].txid)
.then((_json) => { .then((_json) => {
if (json[i].interest === 0) {
_zeroInterestUtxo = true;
}
_addresses[json[i].address] = json[i].address; _addresses[json[i].address] = json[i].address;
_transactionsList.push({ _transactionsList.push({
address: json[i].address, address: json[i].address,
@ -155,6 +165,7 @@ class ClaimInterestModal extends React.Component {
totalInterest: _totalInterest, totalInterest: _totalInterest,
addressses: _addresses, addressses: _addresses,
selectedAddress: this.state.selectedAddress ? this.state.selectedAddress : _addresses[Object.keys(_addresses)[0]], selectedAddress: this.state.selectedAddress ? this.state.selectedAddress : _addresses[Object.keys(_addresses)[0]],
displayShowZeroInterestToggle: _zeroInterestUtxo,
}); });
} }
}); });

30
react/src/components/dashboard/claimInterestModal/claimInterestModal.render.js

@ -56,19 +56,23 @@ export const _ClaimInterestTableRender = function() {
</div> </div>
{ this.state.totalInterest > 0 && { this.state.totalInterest > 0 &&
<div className="text-left padding-top-10 padding-bottom-10"> <div className="text-left padding-top-10 padding-bottom-10">
<label className="switch"> { this.state.displayShowZeroInterestToggle &&
<input <span>
type="checkbox" <label className="switch">
checked={ this.state.showZeroInterest } /> <input
<div type="checkbox"
className="slider" checked={ this.state.showZeroInterest } />
onClick={ this.toggleZeroInterest }></div> <div
</label> className="slider"
<div onClick={ this.toggleZeroInterest }></div>
className="toggle-label margin-right-15 pointer" </label>
onClick={ this.toggleZeroInterest }> <div
{ translate('CLAIM_INTEREST.SHOW_ZERO_INTEREST') } className="toggle-label margin-right-15 pointer"
</div> onClick={ this.toggleZeroInterest }>
{ translate('CLAIM_INTEREST.SHOW_ZERO_INTEREST') }
</div>
</span>
}
{ !this.state.spvVerificationWarning && { !this.state.spvVerificationWarning &&
<button <button
type="button" type="button"

Loading…
Cancel
Save