From 8e7004dd7dd3c0944e891da60afd1d6b3f178144 Mon Sep 17 00:00:00 2001 From: Sebastian Grewe Date: Tue, 3 Dec 2013 09:15:51 +0100 Subject: [PATCH] [ADDED] gettopcontributors API call * List top 15 share and hashrate contributors Fixes #866 --- .../pages/api/gettopcontributors.inc.php | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 public/include/pages/api/gettopcontributors.inc.php diff --git a/public/include/pages/api/gettopcontributors.inc.php b/public/include/pages/api/gettopcontributors.inc.php new file mode 100644 index 00000000..0b22faee --- /dev/null +++ b/public/include/pages/api/gettopcontributors.inc.php @@ -0,0 +1,65 @@ +checkAccess($user->checkApiKey($_REQUEST['api_key']), @$_REQUEST['id']); + +// Some settings +if ( ! $interval = $setting->getValue('statistics_ajax_data_interval')) $interval = 300; + +// Fetch raw data +$aContributorsHashes = $statistics->getTopContributors('hashes', 15); +$aContributorsShares = $statistics->getTopContributors('shares', 15); + +// Honor the anonymous flag +foreach ($aContributorsHashes as $iKey => $aData) { + if ($user->isAdmin($user_id)) { + $aContributorsHashes = array( + 'account' => $aData['account'], + 'hashrate' => $aData['hashrate'] + ); + } else if ($aData['is_anonymous'] == 1) { + $aContributorsHashes = array( + 'account' => 'anonymous', + 'hashrate' => $aData['hashrate'] + ); + } else { + $aContributorsHashes = array( + 'account' => $aData['account'], + 'hashrate' => $aData['hashrate'] + ); + } +} + +// Honor the anonymous flag +foreach ($aContributorsShares as $iKey => $aData) { + if ($user->isAdmin($user_id)) { + $aContributorsShares[$iKey] = array( + 'account' => $aData['account'], + 'shares' => $aData['shares'] + ); + } else if ($aData['is_anonymous'] == 1) { + $aContributorsShares[$iKey] = array( + 'account' => 'anonymous', + 'shares' => $aData['shares'] + ); + } else { + $aContributorsShares[$iKey] = array( + 'account' => $aData['account'], + 'shares' => $aData['shares'] + ); + } +} + +// Output JSON format +$data = array( + 'hashes' => $aContributorsHashes, + 'shares' => $aContributorsShares +); +echo $api->get_json($data); + +// Supress master template +$supress_master = 1; +?>