* [ADDED] getUserMiningStats to fetch all speed related data
* Uses global cache if available, falls back to local query and then
local caches
* [REMOVED] getUserHashrate, getUserSharerate, getUserAvgShareDifficulty
* [UPDATED] All code occurences for the above to use the new system
Probably won't change much since global cache was already used but does
help on the Dashboard since we combine at least 2 calls into one.
* [ADDED] LIMIT to getMPQueue and getAPQueue
* [ADDED] Default config payout queue size of 1000 for MP and 1000 for AP
* [UPDATED] Payouts cronjob to use this new default limits
This may help some coins that have tx count issues when doing sendmany.
Other coins can play with the values to find their sweet spot. Run the
payout multiple times in a row to force more transactions of the same
amount.
Fixes#1773 and thanks to @jrwr for the idea!
During payouts, we must ensure our wallets main accounts has the funds
to payout users. Hence we implement a wrapper method:
* If account count == 1 we only have main account, return getbalance
* Else return our main accounts balance - calculated unconfirmed
This should keep getbalance untouched when used on other places but
gives our payout processing a proper main account balance.
It's mostly a wrapper for those wallets running multiple accounts in one
wallet. They are warned on the front-end already but this ensure payouts
process properly.
Fixes#1755 once merged.
* [ADDED] Smarty acl_check function
* [ADDED] Optional default return value for getValue calls
* [UPDATE] ACL Checks in page controllers
* [UPDATE] Navigation template to use check_acl from Smarty
* [ADDED] New ACL options where needed
* [REMOVED] Disable pages from System Settings Tab
* [ADDED] Above removed pages into ACL Settings Tab
This will make usage of ACLs a bit easier and transparent.
Also fixes#1731 once merged.
We need to wrap our getbalance call due to issues in the coind and
payout systems in the RPC. Apparently it's having issues with multiple
accounts setup in a single wallet. Sendmany can not properly use other
accounts added to the wallet as the payout account.
Hence we wrap our getbalance call in the RPC and only return the default
account balance at all times. Since this is used for all payouts and for
payments from blocks, there should be no issue. Those pools running
multiple accounts in their wallet will have to move their coins into the
default wallet!
* [ADDED] Admin Panel Setting for max age for notifications
* [ADDED] Cronjob to clean out old notifications
* [ADDED] New cron to scripts and monitoring
Fixes#1672 once merged.
Without this patch, admin.php checks if it can connect to the wallet service. Regardless of if that check passes or fails, it then checks if the cold wallet address is valid. If the can_connect() test failed, the validateaddress() check will also fail, even if the address is not invalid. To fix this, the validateaddress() check is move to an elseif block in the can_connect() chain.
Additionally, this patch checks to see if the wallet service is running as a testnet. While running as a testnet is perfectly acceptable when testing, the suer should be warned. A lot of folks using the quickstart guide miss this.
A function was added to the Bitcoin class to detect when we are running in a test net. A check was added to admin.php, and the existing can_connect and validateaddress() calls were restructured to solve these issues.
* Ensures we don't spawn more than one PHP process
* Will require admin-intervention to reset the cron_active flag in DB
Shouldn't trigger often but may help people.
* Added IP address to all log output
* Added Page and Action to all log output
* Modified log messages
* Added Error and Fatal handlers
* Raised failed logins to Error
* Added KLogger default log levels
* Made it most verbose