This will fix an issue with templates of other users being applied to
different users logged in. Basically the first cached page would be
displayed for all users.
Created a new cache key for smarty to allow the user ID to be reference
in the cache key. Hence each user has their own cached file which will
be used.
Improved caching by creating subdirectories for cached files. This way
we won't run into a file limit per directory with a lot of cached files.
This fixes#430 and the mentioned issue in that report.
If no workers are found false is returned. Smarty is not able to set a
default on `false` values so we have to set it to 0 if the query failed.
Fixes#418
This will allow pages to skip loading data from backends like the
database or the wallet RPC server. If a cached page is detected and
valid, all dynamic content generation will be skipped completely.
Other pages that have not been adjusted in this commit will still fetch
backend data all the time. This will ensure clients always see the most
recent data, like worker information or account changes.
This should fix#309 completely but needs some testing.
Instead of just making it availble document the smarty cache feature.
It might work for users, but it's advised to rely on the memcache
instead.
Fixes#309
* Renamed configuration array to `smarty` => `cache`
* Added `smarty` => `cache_lifetime` to expire cache files properly
This should be safe to use, be aware that each page request is cached!
That includes any POST/GET calls to the site.
It does help in speeding up the site, up to 100% on some requests. For a
high traffic site it probably makes sense to enable this option with a
low cache lifetime to ensure most recent data.
Addresses #309
Instead of just making it availble document the smarty cache feature.
It might work for users, but it's advised to rely on the memcache
instead.
Fixes#309
* Added monitoring class to deal with monitoring events
* Added event calls to all important cronjobs
* Added cron_end include file for monitoring cleanups on successful runs
* Added Monitoring to autoloader
* Modified account page to check for running auto_payout in monitoring
* Added monitoring to Navigation bar
* Added monitoring controller page
Fixes#415
Now shares are calculated proper with
`id > ? AND id <= ?`
as boundaries. This will ensure the upstream result is also calculated
for the round.
Addresses #143
* Rebased with next to add logging functions
* Added block method to fetch specific block
* Modified getArchive shares method to be more constistent
* Added new global configuration
* Adjusted smarty globals with new configuration
* More verbose pplns cron with logging
* Re-target the round in case of PPLNS not being matched by archive
Fixes#143
* Based PPLNS on Prop Payout script
* Using defaults from prop payout, no class adjustments
* Added more methods required for PPLNS
* Added block methods for dynamic payout calculations
* Added PPLNS Sidebar that also displays the PPLNS Target
* Shares beyond this target will not be included in payouts
* Shares missing to this target will be added from archives
* Enabled archiving by default for PPLNS
* Added configuration options for PPLNS
* Documented the usage for PPLNS, defaults are sane
* Added pplns_payout to run-crons
Addresses #143 and if accepted will fix it
Even though memcache can be disabled, the memcache library is a
requirement as listed in the README.md. I clarified that in the
configuration file itself to ensure people install it even though they
might be disabling it for debugging purpose.
Fixes#409
This will allow pool owners to make certain pages public accessible
without user registration or login. Please check the config dist file
for details.
Fixes#408
This will finally fix all block finding issues with a 4 way detection.
The find upstream method will continue to try other ways to find a
proper share until they are all exhausted or a match was found.
* Use stratum solution, create scrypt hash from block header
* Use pushpoold solution, create solution string from block header
* Use first available upstream share in timerange of block time
* Use *any* first available valid share older than time of block
This will fix#405 - no more unknown blocks. Ever.
This will allow us to start checking a blockhash against a solution
submitted to the database.
Details on this in the ticket. Just a WIP to save file states.
Addresses #405
This will ensure data is available for those pages relying on global
data. A better step might be to load template specific data always on
the pages that require the data instead of relying on global data to be
available.
Fixes#309