diff --git a/cronjobs/payouts.php b/cronjobs/payouts.php index c96af16c..24b2629a 100755 --- a/cronjobs/payouts.php +++ b/cronjobs/payouts.php @@ -41,7 +41,7 @@ $sendmanyAvailable = ((strpos($bitcoin->help('sendmany'), 'unknown') === FALSE) if ($sendmanyAvailable) $log->logDebug(' sendmany available in coind help command'); -if (!$dWalletBalance = $bitcoin->getbalance()) +if (!$dWalletBalance = $bitcoin->getrealbalance()) $dWalletBalance = 0; // Fetch outstanding manual-payouts @@ -113,7 +113,7 @@ if ($setting->getValue('disable_manual_payouts') != 1 && $aManualPayouts) { } } -if (!$dWalletBalance = $bitcoin->getbalance()) +if (!$dWalletBalance = $bitcoin->getrealbalance()) $dWalletBalance = 0; // Fetch outstanding auto-payouts diff --git a/public/include/classes/bitcoinwrapper.class.php b/public/include/classes/bitcoinwrapper.class.php index ebe1c470..010b455f 100644 --- a/public/include/classes/bitcoinwrapper.class.php +++ b/public/include/classes/bitcoinwrapper.class.php @@ -31,17 +31,26 @@ class BitcoinWrapper extends BitcoinClient { if ($data = $this->memcache->get(__FUNCTION__)) return $data; return $this->memcache->setCache(__FUNCTION__, parent::getmininginfo(), 30); } - // Wrapper to check our wallet balance from the DEFAULT account only - public function getbalance() { - $this->oDebug->append("STA " . __METHOD__, 4); - $aAccounts = parent::listaccounts(); - return $aAccounts['']; - } public function getblockcount() { $this->oDebug->append("STA " . __METHOD__, 4); if ($data = $this->memcache->get(__FUNCTION__)) return $data; return $this->memcache->setCache(__FUNCTION__, parent::getblockcount(), 30); } + // Wrapper method to get the real main account balance + public function getrealbalance() { + $this->oDebug->append("STA " . __METHOD__, 4); + $aAccounts = parent::listaccounts(); + $dBalance = parent::getbalance(); + // Account checks + if (count($aAccounts) == 1) { + // We only have a single account so getbalance will be fine + return $dBalance; + } else { + $dMainBalance = $aAccounts['']; + $dUnconfirmed = $dMainBalance - $dBalance; + return $dMainBalance - $dUnconfirmed; + } + } public function getdifficulty() { $this->oDebug->append("STA " . __METHOD__, 4); if ($data = $this->memcache->get(__FUNCTION__)) return $data;