id); $coinid = intval($user->coinid); if ($coinid) { $coin = getdbo('db_coins', $coinid); } echo "
"; echo "
Miners: {$user->username}
"; echo "
"; echo ''; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; foreach(yaamp_get_algos() as $algo) { if (!YAAMP_ALLOW_EXCHANGE && isset($coin) && $coin->algo != $algo) continue; $user_rate1 = yaamp_user_rate($userid, $algo); $user_rate1_bad = yaamp_user_rate_bad($userid, $algo); $percent_bad = ($user_rate1 + $user_rate1_bad)? $user_rate1_bad * 100 / ($user_rate1 + $user_rate1_bad): 0; $percent_bad = $percent_bad? round($percent_bad, 1).'%': ''; $user_rate1 = $user_rate1? Itoa2($user_rate1).'h/s': '-'; $minercount = getdbocount('db_workers', "userid=$userid AND algo=:algo", array(':algo'=>$algo)); if (YAAMP_ALLOW_EXCHANGE || !$user->coinid) { $user_shares = controller()->memcache->get_database_scalar("wallet_user_shares-$userid-$algo", "SELECT SUM(difficulty) FROM shares WHERE valid AND userid=$userid AND algo=:algo", array(':algo'=>$algo)); if(!$user_shares && !$minercount) continue; $total_shares = controller()->memcache->get_database_scalar("wallet_total_shares-$algo", "SELECT SUM(difficulty) FROM shares WHERE valid AND algo=:algo", array(':algo'=>$algo)); } else { // we know the single currency mined if auto exchange is disabled $user_shares = controller()->memcache->get_database_scalar("wallet_user_shares-$algo-$coinid-$userid", "SELECT SUM(difficulty) FROM shares WHERE valid AND userid=$userid AND coinid=$coinid AND algo=:algo", array(':algo'=>$algo)); if(!$user_shares) continue; $total_shares = controller()->memcache->get_database_scalar("wallet_coin_shares-$coinid", "SELECT SUM(difficulty) FROM shares WHERE valid AND coinid=$coinid AND algo=:algo", array(':algo'=>$algo)); } if(!$total_shares) continue; $percent_shares = round($user_shares * 100 / $total_shares, 4); echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; } echo "
SummaryMinersSharesHashrate*Reject*
'.$algo.''.$minercount.''.$percent_shares.'%'.$user_rate1.''.$percent_bad.'
"; //////////////////////////////////////////////////////////////////////////////// $workers = getdbolist('db_workers', "userid=$user->id order by password"); if(count($workers)) { echo "
"; echo ""; echo ""; echo ""; echo ""; if ($this->admin) echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; foreach($workers as $worker) { $user_rate1 = yaamp_worker_rate($worker->id, $worker->algo); $user_rate1_bad = yaamp_worker_rate_bad($worker->id, $worker->algo); $user_rejects = yaamp_worker_shares_bad($worker->id, $worker->algo); if (!$user_rejects) $user_rejects = ''; $percent = ($user_rate1 + $user_rate1_bad)? $user_rate1_bad * 100 / ($user_rate1 + $user_rate1_bad): 0; $percent = $percent? round($percent, 2).'%': ''; $user_rate1 = $user_rate1? Itoa2($user_rate1).'h/s': ''; $version = substr($worker->version, 0, 20); $password = substr($worker->password, 0, 32); $subscribe = Booltoa($worker->subscribe); echo ''; echo ''; if ($this->admin) echo ""; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; } echo "
DetailsIPExtraAlgoDiffES**Hashrate*Reject*
'.$version.'{$worker->ip}'.$password.''.$worker->algo.''.$worker->difficulty.''.$subscribe.''.$user_rate1.''.$user_rejects.'
"; } echo "
"; echo "

 * approximate from the last 5 minutes submitted shares
 ** extranonce.subscribe

"; echo "

";