Commit Graph

94 Commits

Author SHA1 Message Date
Sebastian Grewe
83f8438a9c last cleanup before merge 2013-07-08 08:49:55 +02:00
Sebastian Grewe
5e98496cec Update proportional_payout.php
Abort if no shares could be found for a block to allow user intervention to fix it.
2013-07-08 07:22:05 +02:00
Sebastian Grewe
6dc795fd77 Improved cron logging via logfiles
* Added 3rd party logger library KLogger
* Adjusted all cronjobs from verbose output to logging
* Added new logs folder for crons to write to
* Added new .gitignore for logs folder data
* Updated blocks class to only fetch blocks with no share_id
* Adjusted findblocks to use no blocks class method
2013-07-07 22:04:43 +02:00
Sebastian Grewe
2586aca34e Revert "Fixing issue with delayed inserts for shares"
This reverts commit 752b3e810f.
2013-07-07 19:52:24 +02:00
Sebastian Grewe
8b3aec6aad Merge pull request #394 from TheSerapher/issue-392-abort-payout
Abort payout process if `share_id` is missing
2013-07-06 15:23:12 -07:00
Sebastian Grewe
5d57593f5d Abort payout process if share_id is missing
If we have a block with NO `share_id` we abort the entire process. Less
of an issue with proportional since PPS is still being paid out, but a
block round will never actually end.

This will allow for manual intervention by the user. Otherwise blocks
found after the one having issues might trigger the payout process and
pay out shares of the old block in a more recently found one.

Please use #392 for further help on this, I have yet to replicate the
unknown block finder issue with the proper amount of upstream shares.
2013-07-07 00:19:56 +02:00
Sebastian Grewe
752b3e810f Fixing issue with delayed inserts for shares
When shares are inserted with a delay for performance optimizations,
this will cause block timestamps to be completely off with share
timestamps. Hence the timestamp limited search is now removed, it would
cause too many issues for Stratum users/pools.

Addresses #392
2013-07-06 23:11:28 +02:00
Sebastian Grewe
b021440ab7 Removed debug exit on findblock cron 2013-07-04 09:12:11 +02:00
Sebastian Grewe
3ab9d5252f Merge pull request #341 from TheSerapher/issue-308
Adding dynamic block value support in PPS
2013-07-03 23:53:24 -07:00
Sebastian Grewe
f4ce22bee8 Skip bogus upstream shares
This will fix an issue with blocks being assigned upstream shares that
are marked as valid but are not the actual solution for a block.

Only shares inserted when or after the block timestamp are now looked
at. This will ensure other shares inserted earlier and marked as
upstream valid are skipped.

This will not fix edge cases where many shares are inserted at the same
time and are all in the same timeframe of the block. Then the first
valid share in that time is used.

This worked fine on a testnet with a number of blocks found and false
shares inserted by hand.

Fixes #352
2013-07-03 15:01:08 +02:00
Sebastian Grewe
cb7f114cbc Adding dynamic block value support in PPS
This will add the block reward typw to PPS systems. Prior to this, each
PPS value was hard coded to 50. Not only are other coins not based on
this but changing it would require code. Changed it that

* Default for fixed type is config reward
* Default for block type is **previous** blocks amount
** Fallback for first round is the fixed reward value

See in-line documentation of dist configuration. This should help new
pool owners to get setup and clarify things.

Fixes #308
2013-07-01 17:45:23 +02:00
Sebastian Grewe
4be963d7be Detect if we use POS difficulties or not
Fixes #275
2013-06-30 19:35:49 +02:00
Sebastian Grewe
af70a194c9 Adding support for POS coin
This will fix #275 and add proper support for a different implementation
of network difficulty.
2013-06-30 19:35:49 +02:00
Sebastian Grewe
1126118cb9 Fetch all user shares in one query
This will fetch all user shares in a single run, not user by user as
done previously. Saves one query and can possibly increase SQL execution
time.

Addresses #246
2013-06-26 10:54:10 +02:00
Sebastian Grewe
8dbc8c6a9b Display fixed or block reward in findblock cron
Fixes #76
2013-06-25 08:57:40 +02:00
Sebastian Grewe
2204b6d9f3 Adding support to pay out full block amount
* Configuration setting added: `reward_type`
* Default behaviour: `fixed` payout by `reward` setting
* Optional: `block` to payout full block amount to users

Fixes #76
2013-06-25 08:52:30 +02:00
Sebastian Grewe
2095b09d69 More verbose output on cron updates
* Added more verbosity to crons
* Made the output look better on consoles
* Added another error message to notifications class
2013-06-24 10:36:59 +02:00
Sebastian Grewe
4113e05a10 Adding multi-API support
This will allow users to change the API url, added coinchose as an
example as pointed out by @vias79 .

* tools class detects the API type
* getPrice returns the price based on API URL parsed

Fixes #236
2013-06-23 20:41:43 +02:00
Sebastian Grewe
06d85b1459 fixing BASEPATH in tickerupdate 2013-06-20 13:43:02 +02:00
Sebastian Grewe
5f271e3f67 Fixing issues with application using BASEPATH
Fixes #217
2013-06-19 14:50:13 +02:00
Sebastian Grewe
b08c02d384 Sent notifications for all enabled users
* Data was not properly addressed in aAccounts array

Fixes #214
2013-06-18 14:34:29 +02:00
Sebastian Grewe
d2c6422f3d Payout Systems should check for activation
* Check if configuration is setup to run a specific payout system
* Added all payout systems to cron script

Fixes #210
2013-06-18 10:41:11 +02:00
Sebastian Grewe
34509051e2 Properly detect if we did find an upstream share
Avoid returning true even if no share was found.

Addresses #189
2013-06-18 09:30:13 +02:00
Sebastian Grewe
d3fa335e2c Ensure we are able to fetch the upstream share
* If a block was found but the upstream share is not inserted, bail out
* Next run should find the upstream share if it was added properly

Should address #189 but maybe not a fix yet.
2013-06-18 09:30:13 +02:00
Sebastian Grewe
905898700a adding per-user share statistics to cron 2013-06-17 16:35:27 +02:00
Sebastian Grewe
fe0beb1617 changed output in auto_payout 2013-06-17 11:25:54 +02:00
Sebastian Grewe
fa7f61c436 Adding transaction fees to transaction class
This will add back the transaction fees. Prior to this commit the pool
had to cover the transaction fees. Now for each transaction the full
balance is transferred (RPC Daemon will remove the TX Fee) but two
transactions are added. One for the Debig and one TXFee.

Fixes #203.

**Requires database upgrade with supplied SQL file**
2013-06-17 11:17:15 +02:00
Sebastian Grewe
91ef2caaab Added cronjob to pre-cache statistics
This will fix #199 and help on loading times for the website in case
caches are empty. Caches are pre-filled by a cron so the website only
does it as a fall back. Check Ticket for details.
2013-06-17 10:07:40 +02:00
Sebastian Grewe
006f4d7f8a updated PPS payout to support block share stats for users 2013-06-14 16:17:34 +02:00
Sebastian Grewe
6f3912b6a2 fixed worker name in mail body 2013-06-14 09:58:54 +02:00
Sebastian Grewe
a2ad57e92a Adding configurable TX Fee for web interface
* This does not actually check the TX fee set on the RPC side
* Ensures TX fee is covered before doing transactions
* Display TX fee when required

Fixes #138
2013-06-13 09:21:08 +02:00
Sebastian Grewe
a006ea782a Adding confirmed and unconfirmed balance
* Added SQL code to support both balances
* Added sidebar entries
* Modified auto_payout to use new index
* Mofified account page to use new index

Addresses #140 but needs to be tested!
2013-06-12 09:13:14 +02:00
Sebastian Grewe
b4a09f22ee archive/purge accounted PPS shares 2013-06-10 18:56:28 +02:00
Sebastian Grewe
41b35a2d96 moved table header to the left 2013-06-10 18:49:58 +02:00
Sebastian Grewe
cb3e02e896 properly format pps value to 12 digits 2013-06-10 18:49:57 +02:00
Sebastian Grewe
3f8a1ea0f7 forgot 8 decimals 2013-06-10 18:49:57 +02:00
Sebastian Grewe
4acf119418 properly format payout and round it 2013-06-10 18:49:57 +02:00
Sebastian Grewe
4745a2f6f8 Adding support for PPS payout method
This commit changed a few things in the backend and classes code:

* Any <type>_PPS transaction does NOT need to be confirmed
* Queries updated for added <type>_PPS transactions
* Template updated to properly display these transactions

Cronjob

* Added pps_payput cron to run payouts based on worker submitted shares
* **IMPORTANT**: Can NOT be run with proportional_payout!

Addresses #70
2013-06-10 18:49:57 +02:00
Sebastian Grewe
37beca9385 removing left over debug in findblock 2013-06-10 10:27:39 +02:00
Sebastian Grewe
4e284895a8 Adding support for block finder bonus
* Added new configuration option `block_bonus`, see `global.inc.dist.php`, default 0
* Added new transaction types: `Bonus` and `Orphan_Bonus`
* Changes transaction table structure, added upgrade SQL
* Changed findblock cron to credit bonus to finder
* Modified transactions class to reflect changes

Fixes #148
2013-06-10 10:11:56 +02:00
Sebastian Grewe
8ed4638057 removed commented section to re-enable auto-payout 2013-06-10 08:51:07 +02:00
Sebastian Grewe
6eeff19ff5 Fixing issue with notification cron
* Updated getAllActive to search by type
2013-06-09 16:44:32 +02:00
Sebastian Grewe
d723f4e8ef Adding notification on automatic payout
* Added new mail template
* Added notification code to auto_payout cron
2013-06-09 15:17:14 +02:00
Sebastian Grewe
79d9c9714d wrong method call 2013-06-09 14:31:00 +02:00
Sebastian Grewe
4ea8b6c695 Adding new notification system for new blocks
* Modified findblocks cron
* Modified notifications cron for new structure
* Improved notification class
* Added new template for new_block type
* Moved idle_worker type template
* Added new_block type to notification settings
2013-06-09 14:26:18 +02:00
Sebastian Grewe
88ade9cfa3 Adding support for various notifications
* Adding new SQL upgrade for notifications
* Added support for per user notification settings
* Added account_id to notifications table
* Added new notification_settings table
* Added new account page: notifications

Addresses #144
2013-06-09 13:10:58 +02:00
Sebastian Grewe
9eeb088734 check if notifications exist at all 2013-06-07 20:15:23 +02:00
Sebastian Grewe
4da9fd2369 Working notification system
* Added things to mail templates
* Modified user password reset call for new mail template
* Added BASEPATH to smarty code to ensure templates are compiled in the
  proper directory
* Updated mail and notification class
* Updated notification cron
* Added notification cron to run-cron list
2013-06-07 15:36:35 +02:00
Sebastian Grewe
69a3761be5 Adding notification reset once worker is active
Go through all active notifications (active means they are not notified
again) and check if their state has changed. If so, mark as inactive and
allow for re-notification of the same type and data.
2013-06-07 15:36:35 +02:00
Sebastian Grewe
9ac2dadd97 Progress on notifications
* Added main mail class
* notification class extends mail class
* Added mail template for IDLE workers
* Added notification table to SQL structure

This works already but once notified the status is not reset as soon as
a worker is active again. Need to think of a system to do that
automatically.

Addresses #116
2013-06-07 15:36:35 +02:00