Merge branch 'development' of https://github.com/MPOS/php-mpos into development
This commit is contained in:
commit
467f8e5335
@ -34,6 +34,7 @@ before_script:
|
|||||||
- nohup php -S bone:8000 public/index.php &
|
- nohup php -S bone:8000 public/index.php &
|
||||||
|
|
||||||
script:
|
script:
|
||||||
|
- php vendor/bin/codecept build
|
||||||
- php vendor/bin/codecept run unit --coverage --coverage-html --coverage-xml --env travis
|
- php vendor/bin/codecept run unit --coverage --coverage-html --coverage-xml --env travis
|
||||||
|
|
||||||
after_script:
|
after_script:
|
||||||
|
|||||||
@ -59,7 +59,7 @@ if ($oToken->cleanupTokens()) {
|
|||||||
}
|
}
|
||||||
$log->logInfo(sprintf($strLogMask, 'cleanupTokens', $affected, number_format(microtime(true) - $start, 3), $status, $message));
|
$log->logInfo(sprintf($strLogMask, 'cleanupTokens', $affected, number_format(microtime(true) - $start, 3), $status, $message));
|
||||||
|
|
||||||
// Clenaup shares archive
|
// Cleanup shares archive
|
||||||
$start = microtime(true);
|
$start = microtime(true);
|
||||||
$status = 'OK';
|
$status = 'OK';
|
||||||
$message = '';
|
$message = '';
|
||||||
@ -73,7 +73,7 @@ if ($affected === false) {
|
|||||||
}
|
}
|
||||||
$log->logInfo(sprintf($strLogMask, 'purgeArchive', $affected, number_format(microtime(true) - $start, 3), $status, $message));
|
$log->logInfo(sprintf($strLogMask, 'purgeArchive', $affected, number_format(microtime(true) - $start, 3), $status, $message));
|
||||||
|
|
||||||
// Clenaup shares archive
|
// Cleanup shares archive
|
||||||
$start = microtime(true);
|
$start = microtime(true);
|
||||||
$status = 'OK';
|
$status = 'OK';
|
||||||
$message = '';
|
$message = '';
|
||||||
|
|||||||
@ -16,19 +16,22 @@ class CSRFToken Extends Base {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns +1 min and +1 hour rollovers hashes
|
* Returns +1 min up to +15 min rollovers hashes
|
||||||
* @param string $user user or IP/host address
|
* @param string $user user or IP/host address
|
||||||
* @param string $type page name or other unique per-page identifier
|
* @param string $type page name or other unique per-page identifier
|
||||||
* @return array 1min and 1hour hashes
|
* @return array 1 minute ago up to 15 minute ago hashes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function checkAdditional($user, $type) {
|
public function checkAdditional($user, $type) {
|
||||||
$date = date('m/d/y/H/i');
|
$date = date('m/d/y/H/i');
|
||||||
$d = explode('/', $date);
|
$d = explode('/', $date);
|
||||||
// minute may have rolled over
|
$hashes = array();
|
||||||
$seed1 = $this->buildSeed($user.$type, $d[0], $d[1], $d[2], $d[3], ($d[4]-1));
|
for ($x = 1; $x < 16; $x++){
|
||||||
// hour may have rolled over
|
for ($y = 4;$d[$y]-- == 0;$y--);
|
||||||
$seed2 = $this->buildSeed($user.$type, $d[0], $d[1], $d[2], ($d[3]-1), 59);
|
if ($d[4] < 0) { $d[4] = 59; }
|
||||||
return array($this->getHash($seed1), $this->getHash($seed2));
|
$hashes[$x-1] = $this->getHash($this->buildSeed($user.$type, $d[0], $d[1], $d[2], $d[3], $d[4]));
|
||||||
|
}
|
||||||
|
return $hashes;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -12,7 +12,7 @@ $aLastBlock = $block->getLast();
|
|||||||
|
|
||||||
// Efficiency
|
// Efficiency
|
||||||
$aShares = $statistics->getRoundShares();
|
$aShares = $statistics->getRoundShares();
|
||||||
$aShares['valid'] > 0 ? $dEfficiency = round((100 - (100 / $aShares['valid'] * $aShares['invalid'])), 2) : $dEfficiency = 0;
|
$aShares['invalid'] > 0 ? $dEfficiency = round((1 - ($aShares['invalid'] / ($aShares['valid'] + $aShares['invalid']))) * 100, 2) : $dEfficiency = 100;
|
||||||
|
|
||||||
// Fetch RPC data
|
// Fetch RPC data
|
||||||
if ($bitcoin->can_connect() === true){
|
if ($bitcoin->can_connect() === true){
|
||||||
|
|||||||
@ -8,13 +8,20 @@ $api->isActive();
|
|||||||
$user_id = $api->checkAccess($user->checkApiKey($_REQUEST['api_key']), @$_REQUEST['id']);
|
$user_id = $api->checkAccess($user->checkApiKey($_REQUEST['api_key']), @$_REQUEST['id']);
|
||||||
|
|
||||||
// Fetch transactions
|
// Fetch transactions
|
||||||
|
if (isset($_REQUEST['start'])) {
|
||||||
|
$start = $_REQUEST['start'];
|
||||||
|
} else {
|
||||||
|
// start at the beginning
|
||||||
|
$start = 0;
|
||||||
|
}
|
||||||
if (isset($_REQUEST['limit']) && $_REQUEST['limit'] <= 100) {
|
if (isset($_REQUEST['limit']) && $_REQUEST['limit'] <= 100) {
|
||||||
$limit = $_REQUEST['limit'];
|
$limit = $_REQUEST['limit'];
|
||||||
} else {
|
} else {
|
||||||
// Force limit
|
// Force limit
|
||||||
$limit = 100;
|
$limit = 100;
|
||||||
}
|
}
|
||||||
$data['transactions'] = $transaction->getTransactions(0, NULL, $limit, $user_id);
|
|
||||||
|
$data['transactions'] = $transaction->getTransactions($start, NULL, $limit, $user_id);
|
||||||
|
|
||||||
// Fetch summary if enabled
|
// Fetch summary if enabled
|
||||||
if (!$setting->getValue('disable_transactionsummary')) {
|
if (!$setting->getValue('disable_transactionsummary')) {
|
||||||
|
|||||||
@ -1,31 +1,35 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<div class="panel panel-info">
|
<div class="panel panel-info">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-connectdevelop fa-fw"></i> Peer Information
|
<i class="fa fa-connectdevelop fa-fw"></i> Peer Information
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body no-padding">
|
<div class="panel-body no-padding">
|
||||||
<table class="table table-striped table-bordered table-hover">
|
<div class="table-responsive">
|
||||||
<thead>
|
<table class="table table-striped table-bordered table-hover">
|
||||||
<tr>
|
<thead>
|
||||||
<th>Host</th>
|
<tr>
|
||||||
<th>Protocol</th>
|
<th>Host</th>
|
||||||
<th>Identity</th>
|
<th>Protocol</th>
|
||||||
<th>Connected</th>
|
<th>Identity</th>
|
||||||
<th>Traffic</th>
|
<th>Connected</th>
|
||||||
</tr>
|
<th>Traffic</th>
|
||||||
</thead>
|
</tr>
|
||||||
<tbody>
|
</thead>
|
||||||
{foreach key=KEY item=ARRAY from=$PEERINFO}
|
<tbody>
|
||||||
<tr>
|
{foreach key=KEY item=ARRAY from=$PEERINFO}
|
||||||
<td>{$ARRAY['addr']}</td>
|
<tr>
|
||||||
<td>{$ARRAY['version']}</td>
|
<td>{$ARRAY['addr']}</td>
|
||||||
<td>{$ARRAY['subver']|replace:'/':''}</td>
|
<td>{$ARRAY['version']}</td>
|
||||||
<td>{$ARRAY['conntime']|date_format:$GLOBAL.config.date}</td>
|
<td>{$ARRAY['subver']|replace:'/':''}</td>
|
||||||
<td>{(($ARRAY['bytessent']|default:"0" + $ARRAY['bytesrecv']|default:"0") / 1024 / 1024)|number_format:"3"} MB</td>
|
<td>{$ARRAY['conntime']|date_format:$GLOBAL.config.date}</td>
|
||||||
</tr>
|
<td>{(($ARRAY['bytessent']|default:"0" + $ARRAY['bytesrecv']|default:"0") / 1024 / 1024)|number_format:"3"} MB</td>
|
||||||
{/foreach}
|
</tr>
|
||||||
</tbody>
|
{/foreach}
|
||||||
</table>
|
</tbody>
|
||||||
</div>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|||||||
@ -1,32 +1,35 @@
|
|||||||
<div class="col-lg-8">
|
<div class="col-lg-8">
|
||||||
<div class="panel panel-info">
|
<div class="panel panel-info">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-info fa-fw"></i> Wallet Status
|
<i class="fa fa-info fa-fw"></i> Wallet Status
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body no-padding">
|
<div class="panel-body no-padding">
|
||||||
<table class="table table-striped table-bordered table-hover">
|
<div class="table-responsive">
|
||||||
<thead>
|
<table class="table table-striped table-bordered table-hover">
|
||||||
<th>Version</th>
|
<thead>
|
||||||
<th>Protocol Version</th>
|
<tr>
|
||||||
<th>Wallet Version</th>
|
<th>Version</th>
|
||||||
<th>Peers</th>
|
<th>Protocol Version</th>
|
||||||
<th>Status</th>
|
<th>Wallet Version</th>
|
||||||
<th>Blocks</th>
|
<th>Peers</th>
|
||||||
<th>Accounts</th>
|
<th>Status</th>
|
||||||
</thead>
|
<th>Blocks</th>
|
||||||
<tbody>
|
<th>Accounts</th>
|
||||||
<tr>
|
</tr>
|
||||||
<td>{$COININFO.version|default:""}</td>
|
</thead>
|
||||||
<td>{$COININFO.protocolversion|default:""}</td>
|
<tbody>
|
||||||
<td>{$COININFO.walletversion|default:""}</td>
|
<tr>
|
||||||
<td>{$COININFO.connections|default:""}</td>
|
<td>{$COININFO.version|default:""}</td>
|
||||||
<td><font color="{if $COININFO.errors}red{else}green{/if}">{$COININFO.errors|default:"OK"}</font></td>
|
<td>{$COININFO.protocolversion|default:""}</td>
|
||||||
<td>{$COININFO.blocks|default:"0"}</td>
|
<td>{$COININFO.walletversion|default:""}</td>
|
||||||
<td>{$ADDRESSCOUNT}</td>
|
<td>{$COININFO.connections|default:""}</td>
|
||||||
</tr>
|
<td><font color="{if $COININFO.errors}red{else}green{/if}">{$COININFO.errors|default:"OK"}</font></td>
|
||||||
</tbody>
|
<td>{$COININFO.blocks|default:"0"}</td>
|
||||||
</table>
|
<td>{$ADDRESSCOUNT}</td>
|
||||||
</div>
|
</tr>
|
||||||
</div>
|
</tbody>
|
||||||
</div>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|||||||
@ -70,7 +70,7 @@
|
|||||||
<p class="h5" id="b-nextdiff">{if $GLOBAL.nethashrate > 0}{$NETWORK.EstNextDifficulty|number_format:"8"}{else}n/a{/if}</p>
|
<p class="h5" id="b-nextdiff">{if $GLOBAL.nethashrate > 0}{$NETWORK.EstNextDifficulty|number_format:"8"}{else}n/a{/if}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="circle-tile-number text-faded">
|
<div class="circle-tile-number text-faded">
|
||||||
<p class="h6">Est Next Difficulty{if $GLOBAL.nethashrate > 0}<br/>Change in {$NETWORK.BlocksUntilDiffChange} Blocks{else}No Estimates{/if}</p>
|
<p class="h6">Est. Next Difficulty{if $GLOBAL.config.coindiffchangetarget > 1}{if $GLOBAL.nethashrate > 0}<br/>Change in {$NETWORK.BlocksUntilDiffChange} Blocks{else}No Estimates{/if}{/if}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -130,7 +130,7 @@
|
|||||||
<p id="b-nextdiff" class="h5">{if $GLOBAL.nethashrate > 0}{$NETWORK.EstNextDifficulty|number_format:"8"}{else}n/a{/if}</p>
|
<p id="b-nextdiff" class="h5">{if $GLOBAL.nethashrate > 0}{$NETWORK.EstNextDifficulty|number_format:"8"}{else}n/a{/if}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="circle-tile-number text-faded">
|
<div class="circle-tile-number text-faded">
|
||||||
<p class="h6">Est Next Difficulty{if $GLOBAL.nethashrate > 0}<br/>Change in {$NETWORK.BlocksUntilDiffChange} Blocks{else}No Estimates{/if}</p>
|
<p class="h6">Est. Next Difficulty{if $GLOBAL.config.coindiffchangetarget > 1}{if $GLOBAL.nethashrate > 0}<br/>Change in {$NETWORK.BlocksUntilDiffChange} Blocks{else}No Estimates{/if}{/if}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -70,7 +70,7 @@
|
|||||||
<p class="h5" id="b-nextdiff">{if $GLOBAL.nethashrate > 0}{$NETWORK.EstNextDifficulty|number_format:"8"}{else}n/a{/if}</p>
|
<p class="h5" id="b-nextdiff">{if $GLOBAL.nethashrate > 0}{$NETWORK.EstNextDifficulty|number_format:"8"}{else}n/a{/if}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="circle-tile-number text-faded">
|
<div class="circle-tile-number text-faded">
|
||||||
<p class="h6">Est Next Difficulty{if $GLOBAL.nethashrate > 0}<br/>Change in {$NETWORK.BlocksUntilDiffChange} Blocks{else}No Estimates{/if}</p>
|
<p class="h6">Est. Next Difficulty{if $GLOBAL.config.coindiffchangetarget > 1}{if $GLOBAL.nethashrate > 0}<br/>Change in {$NETWORK.BlocksUntilDiffChange} Blocks{else}No Estimates{/if}{/if}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -42,7 +42,7 @@
|
|||||||
<td class="text-right">{$LASTBLOCKSBYTIME.TotalShares|number_format}</td>
|
<td class="text-right">{$LASTBLOCKSBYTIME.TotalShares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{if $LASTBLOCKSBYTIME.TotalEstimatedShares > 0}
|
{if $LASTBLOCKSBYTIME.TotalEstimatedShares > 0}
|
||||||
<font color="{if (($LASTBLOCKSBYTIME.TotalShares / $LASTBLOCKSBYTIME.TotalEstimatedShares * 100) <= 100)}green{else}red{/if}">{($LASTBLOCKSBYTIME.TotalShares / $LASTBLOCKSBYTIME.TotalEstimatedShares * 100)|number_format:"2"}%</font></b>
|
<font color="{if (($LASTBLOCKSBYTIME.TotalShares / $LASTBLOCKSBYTIME.TotalEstimatedShares * 100) <= 100)}green{elseif (($LASTBLOCKSBYTIME.TotalShares / $LASTBLOCKSBYTIME.TotalEstimatedShares * 100) <= 115)}orange{else}red{/if}">{($LASTBLOCKSBYTIME.TotalShares / $LASTBLOCKSBYTIME.TotalEstimatedShares * 100)|number_format:"2"}%</font></b>
|
||||||
{else}
|
{else}
|
||||||
0.00%
|
0.00%
|
||||||
{/if}
|
{/if}
|
||||||
@ -68,7 +68,7 @@
|
|||||||
<td class="text-right">{$LASTBLOCKSBYTIME.1HourShares|number_format}</td>
|
<td class="text-right">{$LASTBLOCKSBYTIME.1HourShares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{if $LASTBLOCKSBYTIME.1HourEstimatedShares > 0}
|
{if $LASTBLOCKSBYTIME.1HourEstimatedShares > 0}
|
||||||
<font color="{if (($LASTBLOCKSBYTIME.1HourShares / $LASTBLOCKSBYTIME.1HourEstimatedShares * 100) <= 100)}green{else}red{/if}">{($LASTBLOCKSBYTIME.1HourShares / $LASTBLOCKSBYTIME.1HourEstimatedShares * 100)|number_format:"2"}%</font></b>
|
<font color="{if (($LASTBLOCKSBYTIME.1HourShares / $LASTBLOCKSBYTIME.1HourEstimatedShares * 100) <= 100)}green{elseif (($LASTBLOCKSBYTIME.1HourShares / $LASTBLOCKSBYTIME.1HourEstimatedShares * 100) <= 115)}orange{else}red{/if}">{($LASTBLOCKSBYTIME.1HourShares / $LASTBLOCKSBYTIME.1HourEstimatedShares * 100)|number_format:"2"}%</font></b>
|
||||||
{else}
|
{else}
|
||||||
0.00%
|
0.00%
|
||||||
{/if}
|
{/if}
|
||||||
@ -94,7 +94,7 @@
|
|||||||
<td class="text-right">{$LASTBLOCKSBYTIME.24HourShares|number_format}</td>
|
<td class="text-right">{$LASTBLOCKSBYTIME.24HourShares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{if $LASTBLOCKSBYTIME.24HourEstimatedShares > 0}
|
{if $LASTBLOCKSBYTIME.24HourEstimatedShares > 0}
|
||||||
<font color="{if (($LASTBLOCKSBYTIME.24HourShares / $LASTBLOCKSBYTIME.24HourEstimatedShares * 100) <= 100)}green{else}red{/if}">{($LASTBLOCKSBYTIME.24HourShares / $LASTBLOCKSBYTIME.24HourEstimatedShares * 100)|number_format:"2"}%</font></b>
|
<font color="{if (($LASTBLOCKSBYTIME.24HourShares / $LASTBLOCKSBYTIME.24HourEstimatedShares * 100) <= 100)}green{elseif (($LASTBLOCKSBYTIME.24HourShares / $LASTBLOCKSBYTIME.24HourEstimatedShares * 100) <= 115)}orange{else}red{/if}">{($LASTBLOCKSBYTIME.24HourShares / $LASTBLOCKSBYTIME.24HourEstimatedShares * 100)|number_format:"2"}%</font></b>
|
||||||
{else}
|
{else}
|
||||||
0.00%
|
0.00%
|
||||||
{/if}
|
{/if}
|
||||||
@ -120,7 +120,7 @@
|
|||||||
<td class="text-right">{$LASTBLOCKSBYTIME.7DaysShares|number_format}</td>
|
<td class="text-right">{$LASTBLOCKSBYTIME.7DaysShares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{if $LASTBLOCKSBYTIME.7DaysEstimatedShares > 0}
|
{if $LASTBLOCKSBYTIME.7DaysEstimatedShares > 0}
|
||||||
<font color="{if (($LASTBLOCKSBYTIME.7DaysShares / $LASTBLOCKSBYTIME.7DaysEstimatedShares * 100) <= 100)}green{else}red{/if}">{($LASTBLOCKSBYTIME.7DaysShares / $LASTBLOCKSBYTIME.7DaysEstimatedShares * 100)|number_format:"2"}%</font></b>
|
<font color="{if (($LASTBLOCKSBYTIME.7DaysShares / $LASTBLOCKSBYTIME.7DaysEstimatedShares * 100) <= 100)}green{elseif (($LASTBLOCKSBYTIME.7DaysShares / $LASTBLOCKSBYTIME.7DaysEstimatedShares * 100) <= 115)}orange{else}red{/if}">{($LASTBLOCKSBYTIME.7DaysShares / $LASTBLOCKSBYTIME.7DaysEstimatedShares * 100)|number_format:"2"}%</font></b>
|
||||||
{else}
|
{else}
|
||||||
0.00%
|
0.00%
|
||||||
{/if}
|
{/if}
|
||||||
@ -146,7 +146,7 @@
|
|||||||
<td class="text-right">{$LASTBLOCKSBYTIME.4WeeksShares|number_format}</td>
|
<td class="text-right">{$LASTBLOCKSBYTIME.4WeeksShares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{if $LASTBLOCKSBYTIME.4WeeksEstimatedShares > 0}
|
{if $LASTBLOCKSBYTIME.4WeeksEstimatedShares > 0}
|
||||||
<font color="{if (($LASTBLOCKSBYTIME.4WeeksShares / $LASTBLOCKSBYTIME.4WeeksEstimatedShares * 100) <= 100)}green{else}red{/if}">{($LASTBLOCKSBYTIME.4WeeksShares / $LASTBLOCKSBYTIME.4WeeksEstimatedShares * 100)|number_format:"2"}%</font></b>
|
<font color="{if (($LASTBLOCKSBYTIME.4WeeksShares / $LASTBLOCKSBYTIME.4WeeksEstimatedShares * 100) <= 100)}green{elseif (($LASTBLOCKSBYTIME.4WeeksShares / $LASTBLOCKSBYTIME.4WeeksEstimatedShares * 100) <= 115)}orange{else}red{/if}">{($LASTBLOCKSBYTIME.4WeeksShares / $LASTBLOCKSBYTIME.4WeeksEstimatedShares * 100)|number_format:"2"}%</font></b>
|
||||||
{else}
|
{else}
|
||||||
0.00%
|
0.00%
|
||||||
{/if}
|
{/if}
|
||||||
@ -172,7 +172,7 @@
|
|||||||
<td class="text-right">{$LASTBLOCKSBYTIME.12MonthShares|number_format}</td>
|
<td class="text-right">{$LASTBLOCKSBYTIME.12MonthShares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{if $LASTBLOCKSBYTIME.12MonthEstimatedShares > 0}
|
{if $LASTBLOCKSBYTIME.12MonthEstimatedShares > 0}
|
||||||
<font color="{if (($LASTBLOCKSBYTIME.12MonthShares / $LASTBLOCKSBYTIME.12MonthEstimatedShares * 100) <= 100)}green{else}red{/if}">{($LASTBLOCKSBYTIME.12MonthShares / $LASTBLOCKSBYTIME.12MonthEstimatedShares * 100)|number_format:"2"}%</font></b>
|
<font color="{if (($LASTBLOCKSBYTIME.12MonthShares / $LASTBLOCKSBYTIME.12MonthEstimatedShares * 100) <= 100)}green{elseif (($LASTBLOCKSBYTIME.12MonthShares / $LASTBLOCKSBYTIME.12MonthEstimatedShares * 100) <= 115)}orange{else}red{/if}">{($LASTBLOCKSBYTIME.12MonthShares / $LASTBLOCKSBYTIME.12MonthEstimatedShares * 100)|number_format:"2"}%</font></b>
|
||||||
{else}
|
{else}
|
||||||
0.00%
|
0.00%
|
||||||
{/if}
|
{/if}
|
||||||
|
|||||||
@ -59,7 +59,7 @@
|
|||||||
<td class="text-right">{$BLOCKSFOUND[block].shares|number_format}</td>
|
<td class="text-right">{$BLOCKSFOUND[block].shares|number_format}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{math assign="percentage" equation="shares / estshares * 100" shares=$BLOCKSFOUND[block].shares|default:"0" estshares=$BLOCKSFOUND[block].estshares}
|
{math assign="percentage" equation="shares / estshares * 100" shares=$BLOCKSFOUND[block].shares|default:"0" estshares=$BLOCKSFOUND[block].estshares}
|
||||||
<font color="{if ($percentage <= 100)}green{else}red{/if}">{$percentage|number_format:"2"}</font>
|
<font color="{if ($percentage <= 100)}green{elseif ($percentage <= 115)}orange{else}red{/if}">{$percentage|number_format:"2"}</font>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{/section}
|
{/section}
|
||||||
@ -70,7 +70,7 @@
|
|||||||
<td class="text-right">{$pplnsshares|number_format}</td>
|
<td class="text-right">{$pplnsshares|number_format}</td>
|
||||||
{/if}
|
{/if}
|
||||||
<td class="text-right">{$totalshares|number_format}</td>
|
<td class="text-right">{$totalshares|number_format}</td>
|
||||||
<td class="text-right">{if $count > 0}<font color="{if (($totalshares / $totalexpectedshares * 100) <= 100)}green{else}red{/if}">{($totalshares / $totalexpectedshares * 100)|number_format:"2"}</font>{else}0{/if}</td>
|
<td class="text-right">{if $count > 0}<font color="{if (($totalshares / $totalexpectedshares * 100) <= 100)}green{elseif (($totalshares / $totalexpectedshares * 100) <= 115)}orange{else}red{/if}">{($totalshares / $totalexpectedshares * 100)|number_format:"2"}</font>{else}0{/if}</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user