[CLEANUP] Dashboard number formatting

Cleans up some Ajax data on the dashboard to match the static template
data format. No more jumpy numbers.

Fixes #1354
This commit is contained in:
Sebastian Grewe 2014-01-11 13:10:44 +01:00
parent 88c962266f
commit 5f942d9ba7
5 changed files with 25 additions and 31 deletions

View File

@ -61,14 +61,9 @@ if ($config['payout_system'] != 'pps') {
$aEstimates = $statistics->getUserEstimates($dPersonalSharerate, $dPersonalShareDifficulty, $user->getUserDonatePercent($user_id), $user->getUserNoFee($user_id), $statistics->getPPSValue());
}
$iTotalRoundShares = $aRoundShares['valid'] + $aRoundShares['invalid'];
if ($iTotalRoundShares > 0) {
$dUserInvalidPercent = round($aUserRoundShares['invalid'] / $iTotalRoundShares * 100, 2);
$dPoolInvalidPercent = round($aRoundShares['invalid'] / $iTotalRoundShares * 100, 2);
} else {
$dUserInvalidPercent = 0;
$dPoolInvalidPercent = 0;
}
// Round/user percentages
$aRoundShares['valid'] + $aRoundShares['invalid'] > 0 ? $dPoolInvalidPercent = round($aRoundShares['invalid'] / ($aRoundShares['valid'] + $aRoundShares['invalid']) * 100, 2) : $dPoolInvalidPercent = 0;
$aUserRoundShares['valid'] + $aUserRoundShares['valid'] > 0 ? $dUserInvalidPercent = round($aUserRoundShares['invalid'] / ($aUserRoundShares['valid'] + $aUserRoundShares['valid']) * 100, 2) : $dUserInvalidPercent = 0;
// Apply pool modifiers
$dPersonalHashrateAdjusted = $dPersonalHashrate * $dPersonalHashrateModifier;
@ -80,12 +75,9 @@ $aPrice = $setting->getValue('price');
// Round progress
$iEstShares = $statistics->getEstimatedShares($dDifficulty);
if ($iEstShares > 0 && $aRoundShares['valid'] > 0) {
$dEstPercent = round(100 / $iEstShares * $aRoundShares['valid'], 2);
} else {
$dEstPercent = 0;
}
$iEstShares > 0 && $aRoundShares['valid'] > 0 ? $dEstPercent = round(100 / $iEstShares * $aRoundShares['valid'], 2) : $dEstPercent = 0;
// Some estimates
$dExpectedTimePerBlock = $statistics->getNetworkExpectedTimePerBlock();
$dEstNextDifficulty = $statistics->getExpectedNextDifficulty();
$iBlocksUntilDiffChange = $statistics->getBlocksUntilDiffChange();

View File

@ -135,12 +135,14 @@ $(document).ready(function(){
$('#b-hashrate').html((parseFloat(data.getdashboarddata.data.personal.hashrate).toFixed(2)));
$('#b-sharerate').html((parseFloat(data.getdashboarddata.data.personal.sharerate).toFixed(2)));
$('#b-yvalid').html(number_format(data.getdashboarddata.data.personal.shares.valid));
$('#b-yivalid').html(number_format(data.getdashboarddata.data.personal.shares.invalid) + " (" + data.getdashboarddata.data.personal.shares.invalid_percent + "%)" );
$('#b-yivalid').html(number_format(data.getdashboarddata.data.personal.shares.invalid) + " (" + number_format(data.getdashboarddata.data.personal.shares.invalid_percent, 2) + "%)" );
$('#b-pvalid').html(number_format(data.getdashboarddata.data.pool.shares.valid));
$('#b-pivalid').html(number_format(data.getdashboarddata.data.pool.shares.invalid) + " (" + data.getdashboarddata.data.pool.shares.invalid_percent + "%)" );
$('#b-pivalid').html(number_format(data.getdashboarddata.data.pool.shares.invalid) + " (" + number_format(data.getdashboarddata.data.pool.shares.invalid_percent, 2) + "%)" );
$('#b-diff').html(number_format(data.getdashboarddata.data.network.difficulty, 8));
$('#b-nextdiff').html(number_format(data.getdashboarddata.data.network.nextdifficulty, 8) + " (Change in " + data.getdashboarddata.data.network.blocksuntildiffchange + " Blocks)");
$('#b-esttimeperblock').html(data.getdashboarddata.data.network.esttimeperblock + " seconds"); // <- this needs some nicer format
var minutes = Math.floor(data.getdashboarddata.data.network.esttimeperblock / 60);
var seconds = Math.floor(data.getdashboarddata.data.network.esttimeperblock - minutes * 60);
$('#b-esttimeperblock').html(minutes + " minutes " + seconds + " seconds"); // <- this needs some nicer format
$('#b-nblock').html(data.getdashboarddata.data.network.block);
$('#b-target').html(number_format(data.getdashboarddata.data.pool.shares.estimated) + " (done: " + data.getdashboarddata.data.pool.shares.progress + "%)" );
{/literal}{if $GLOBAL.config.payout_system != 'pps'}{literal }

View File

@ -1,5 +1,5 @@
<article class="module module width_3_quarter">
<header><h3>Overview {if $GLOBAL.config.price.currency}{$GLOBAL.config.currency}/{$GLOBAL.config.price.currency}: <span id="b-price">{$GLOBAL.price}</span>{/if} / Pool Workers: <span id="b-dworkers">{$GLOBAL.workers}</span></h3></header>
<header><h3>Overview {if $GLOBAL.config.price.currency}{$GLOBAL.config.currency}/{$GLOBAL.config.price.currency}: <span id="b-price">{$GLOBAL.price|number_format:"8"}</span>{/if} / Pool Workers: <span id="b-dworkers">{$GLOBAL.workers}</span></h3></header>
<div class="module_content">
<center>
<div style="display: inline-block;">

View File

@ -5,39 +5,39 @@
{if $GLOBAL.config.payout_system != 'pps'}
<tr>
<td><b>Block</b></td>
<td id="b-block" class="right">{$GLOBAL.userdata.estimates.block}</td>
<td id="b-block" class="right">{$GLOBAL.userdata.estimates.block|number_format:"8"}</td>
</tr>
<tr>
<td><b>Fees</b></td>
<td id="b-fee" class="right">{$GLOBAL.userdata.estimates.fee}</td>
<td id="b-fee" class="right">{$GLOBAL.userdata.estimates.fee|number_format:"8"}</td>
</tr>
<tr>
<td><b>Donation</b></td>
<td id="b-donation" class="right">{$GLOBAL.userdata.estimates.donation}</td>
<td id="b-donation" class="right">{$GLOBAL.userdata.estimates.donation|number_format:"8"}</td>
</tr>
<tr>
<td><b>Payout</b></td>
<td id="b-payout" class="right">{$GLOBAL.userdata.estimates.payout}</td>
<td id="b-payout" class="right">{$GLOBAL.userdata.estimates.payout|number_format:"8"}</td>
</tr>
{else}
<tr>
<td><b>in 1 hour</b></td>
<td id="b-est1hour" align="left">{$GLOBAL.userdata.estimates.hours1|round:"8"}</td>
<td id="b-est1hour" align="left">{$GLOBAL.userdata.estimates.hours1|number_format:"8"}</td>
</tr>
<tr>
<td><b>in 24 hours</b></td>
<td id="b-est24hours" align="left">{($GLOBAL.userdata.estimates.hours24)|round:"8"}</td>
<td id="b-est24hours" align="left">{($GLOBAL.userdata.estimates.hours24)|number_format:"8"}</td>
</tr>
<tr>
<td><b>in 7 days</b></td>
<td id="b-est7days" align="left">{($GLOBAL.userdata.estimates.days7)|round:"8"}</td>
<td id="b-est7days" align="left">{($GLOBAL.userdata.estimates.days7)|number_format:"8"}</td>
</tr>
<tr>
<td><b>in 14 days</b></td>
<td id="b-est14days" align="left">{($GLOBAL.userdata.estimates.days14)|round:"8"}</td>
<td id="b-est14days" align="left">{($GLOBAL.userdata.estimates.days14)|number_format:"8"}</td>
</tr>
<tr>
<td><b>in 30 days</b></td>
<td id="b-est30days" align="left">{($GLOBAL.userdata.estimates.days30)|round:"8"}</td>
<td id="b-est30days" align="left">{($GLOBAL.userdata.estimates.days30)|number_format:"8"}</td>
</tr>
{/if}

View File

@ -3,21 +3,21 @@
</tr>
<tr>
<td><b>Est. Shares</b></td>
<td id="b-target" class="right">{$ESTIMATES.shares} (done: {$ESTIMATES.percent}%)</td>
<td id="b-target" class="right">{$ESTIMATES.shares|number_format} (done: {$ESTIMATES.percent}%)</td>
</tr>
<tr>
<td><b>Pool Valid</b></td>
<td id="b-pvalid" class="right">{$GLOBAL.roundshares.valid}</td>
<td id="b-pvalid" class="right">{$GLOBAL.roundshares.valid|number_format}</td>
</tr>
<tr>
<td><b>Your Valid<b></td>
<td id="b-yvalid" class="right">{$GLOBAL.userdata.shares.valid}</td>
<td id="b-yvalid" class="right">{$GLOBAL.userdata.shares.valid|number_format}</td>
</tr>
<tr>
<td><b>Pool Invalid</b></td>
<td id="b-pivalid" class="right">{$GLOBAL.roundshares.invalid}</td>
<td id="b-pivalid" class="right">{$GLOBAL.roundshares.invalid|number_format} {if $GLOBAL.roundshares.valid > 0}({($GLOBAL.roundshares.invalid / ($GLOBAL.roundshares.valid + $GLOBAL.roundshares.invalid) * 100)|number_format:"2"}%){else}(0.00%){/if}</td></td>
</tr>
<tr>
<td><b>Your Invalid</b></td>
<td id="b-yivalid" class="right">{$GLOBAL.userdata.shares.invalid}</td>
<td id="b-yivalid" class="right">{$GLOBAL.userdata.shares.invalid|number_format} {if $GLOBAL.userdata.shares.valid > 0}({($GLOBAL.userdata.shares.invalid / ($GLOBAL.userdata.shares.valid + $GLOBAL.userdata.shares.invalid) * 100)|number_format:"2"}%){else}(0.00%){/if}</td>
</tr>