|
|
@ -1573,8 +1573,13 @@ void RPC::refreshPrice() { |
|
|
|
if (conn == nullptr) |
|
|
|
return noConnection(); |
|
|
|
|
|
|
|
QString price_feed; |
|
|
|
|
|
|
|
// TODO: Make price_feed dynamic to support HACs
|
|
|
|
if (isdragonx) { |
|
|
|
return; |
|
|
|
price_feed = "https://api.coingecko.com/api/v3/simple/price?ids=dragonx-2&vs_currencies=btc%2Cusd%2Ceur%2Ceth%2Cgbp%2Ccny%2Cjpy%2Cidr%2Crub%2Ccad%2Csgd%2Cchf%2Cinr%2Caud%2Cinr%2Ckrw%2Cthb%2Cnzd%2Czar%2Cvef%2Cxau%2Cxag%2Cvnd%2Csar%2Ctwd%2Caed%2Cars%2Cbdt%2Cbhd%2Cbmd%2Cbrl%2Cclp%2Cczk%2Cdkk%2Chuf%2Cils%2Ckwd%2Clkr%2Cpkr%2Cnok%2Ctry%2Csek%2Cmxn%2Cuah%2Chkd&include_market_cap=true&include_24hr_vol=true&include_24hr_change=true"; |
|
|
|
} else { |
|
|
|
price_feed = "https://api.coingecko.com/api/v3/simple/price?ids=hush&vs_currencies=btc%2Cusd%2Ceur%2Ceth%2Cgbp%2Ccny%2Cjpy%2Cidr%2Crub%2Ccad%2Csgd%2Cchf%2Cinr%2Caud%2Cinr%2Ckrw%2Cthb%2Cnzd%2Czar%2Cvef%2Cxau%2Cxag%2Cvnd%2Csar%2Ctwd%2Caed%2Cars%2Cbdt%2Cbhd%2Cbmd%2Cbrl%2Cclp%2Cczk%2Cdkk%2Chuf%2Cils%2Ckwd%2Clkr%2Cpkr%2Cnok%2Ctry%2Csek%2Cmxn%2Cuah%2Chkd&include_market_cap=true&include_24hr_vol=true&include_24hr_change=true"; |
|
|
|
} |
|
|
|
|
|
|
|
auto s = Settings::getInstance(); |
|
|
@ -1584,7 +1589,6 @@ void RPC::refreshPrice() { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
QString price_feed = "https://api.coingecko.com/api/v3/simple/price?ids=hush&vs_currencies=btc%2Cusd%2Ceur%2Ceth%2Cgbp%2Ccny%2Cjpy%2Cidr%2Crub%2Ccad%2Csgd%2Cchf%2Cinr%2Caud%2Cinr%2Ckrw%2Cthb%2Cnzd%2Czar%2Cvef%2Cxau%2Cxag%2Cvnd%2Csar%2Ctwd%2Caed%2Cars%2Cbdt%2Cbhd%2Cbmd%2Cbrl%2Cclp%2Cczk%2Cdkk%2Chuf%2Cils%2Ckwd%2Clkr%2Cpkr%2Cnok%2Ctry%2Csek%2Cmxn%2Cuah%2Chkd&include_market_cap=true&include_24hr_vol=true&include_24hr_change=true"; |
|
|
|
qDebug() << "Requesting price feed data via " << price_feed; |
|
|
|
|
|
|
|
QUrl cmcURL(price_feed); |
|
|
@ -1632,7 +1636,16 @@ void RPC::refreshPrice() { |
|
|
|
qDebug() << "Parsed JSON"; |
|
|
|
|
|
|
|
const QJsonValue& item = parsed; |
|
|
|
const QJsonValue& hush = item["hush"].toObject(); |
|
|
|
|
|
|
|
// TODO: Rename hush to be more universal for HACs and avoid confusion
|
|
|
|
QJsonValue hush; |
|
|
|
|
|
|
|
if (isdragonx) { |
|
|
|
hush = item["dragonx-2"].toObject(); |
|
|
|
} else { |
|
|
|
hush = item["hush"].toObject(); |
|
|
|
} |
|
|
|
|
|
|
|
QString ticker = s->get_currency_name(); |
|
|
|
ticker = ticker.toLower(); |
|
|
|
fprintf(stderr,"ticker=%s\n", ticker.toLocal8Bit().data()); |
|
|
@ -1666,17 +1679,24 @@ void RPC::refreshPrice() { |
|
|
|
qDebug() << "Volume = " << (double) vol; |
|
|
|
|
|
|
|
ticker = ticker.toUpper(); |
|
|
|
ui->volume->setText( QString::number((double) vol, 'f', 2) + " " + ticker ); |
|
|
|
ui->volumeBTC->setText( QString::number((double) btcvol, 'f', 2) + " BTC" ); |
|
|
|
ui->volume->setText( QString::number((double) vol, 'f', 8) + " " + ticker ); |
|
|
|
ui->volumeBTC->setText( QString::number((double) btcvol, 'f', 8) + " BTC" ); |
|
|
|
|
|
|
|
ticker = ticker.toUpper(); |
|
|
|
// We don't get an actual HUSH volume stat, so we calculate it
|
|
|
|
if (price > 0) |
|
|
|
ui->volumeLocal->setText( QString::number((double) vol / (double) price) + " HUSH"); |
|
|
|
if (price > 0) { |
|
|
|
|
|
|
|
// TODO: Make dynamic to support HACs
|
|
|
|
if (isdragonx) { |
|
|
|
ui->volumeLocal->setText( QString::number((double) vol / (double) price) + " DRGX"); |
|
|
|
} else { |
|
|
|
ui->volumeLocal->setText( QString::number((double) vol / (double) price) + " HUSH"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
qDebug() << "Mcap = " << (double) mcap; |
|
|
|
ui->marketcap->setText( QString::number( (double) mcap, 'f', 2) + " " + ticker ); |
|
|
|
ui->marketcapBTC->setText( QString::number((double) btcmcap, 'f', 2) + " BTC" ); |
|
|
|
ui->marketcap->setText( QString::number( (double) mcap, 'f', 8) + " " + ticker ); |
|
|
|
ui->marketcapBTC->setText( QString::number((double) btcmcap, 'f', 8) + " BTC" ); |
|
|
|
//ui->marketcapLocal->setText( QString::number((double) mcap * (double) price) + " " + ticker );
|
|
|
|
|
|
|
|
refresh(true); |
|
|
|