Commit Graph

58 Commits

Author SHA1 Message Date
Sebastian Grewe
878fa1c1c8 [IMPROVED] Unlock notification mails on auto-locks
* Added new token type: account_unlock
* Added update SQL File
* Updated base structure with new token type
* Added empty template
* Updated user class to send mail on failed passwords
* Added unlock account page to use tokens

Addresses #670
2014-01-02 11:51:22 +01:00
Sebastian Grewe
67a6d9aff4 [UPDATE] Coding style 2014-01-02 11:05:07 +01:00
Neozonz
e3db7e0a02 Initial commit for pin reset functionality 2013-12-30 03:29:20 -05:00
Sebastian Grewe
96d096f669 [MERGE] Fix merge conflict 2013-12-30 08:19:13 +01:00
Sebastian Grewe
b16d9afcad [SECURITY] Fixed exploit in token types
Fixes an exploit due to missing check of token type used.

Fixes #1118 once merged.
2013-12-27 00:21:22 +01:00
Sebastian Grewe
51a996573d [IMPROVED] Transaction data handling
This will improve loading times on large transaction tables. Thanks
@feeleep75 for helping with this one.

* Do not use SQL_CALC_NUM_ROWS since it will do a full table scan
* Allow admins to disable account transaction summaries to speed up page
  loads on large tables
* added new admin setting under system to Disable TX Summaries

Fixes #1065 once merged
2013-12-23 10:48:12 +01:00
Sebastian Grewe
0d6ee6d821 [IMPROVED] Auto/Manual Payout Disabled
This will re-add the ability to disable auto or manual payouts. Option
to disable the entire cronjob is left intact.

Fixes #1034 when merged.
2013-12-19 15:17:29 +01:00
Sebastian Grewe
afb5fc6c0d [CHANGED] Merge payout crons
* Merge manual and auto-payout into single cronjob
* Update template/code to reflect single payout cron
* Update monitoring page
* Update disable payouts option in admin panel settings
* Update account payout page to use new option

This will fix #967 once merged.
2013-12-12 11:45:33 +01:00
Sebastian Grewe
6a693ea25e [FIX] Account Lockouts on Edit Account page
Fixes #939 once merged.
2013-12-10 16:14:44 +01:00
Sebastian Grewe
256b5f59c6 [IMPROVED] Lockout user on invalid pin/password
This will lock a user account if a password or PIN has been entered
wrong for multiple times in a row. When unlocking the account via admin
panel, both counters are reset so the user can log in again.

This should fix issues with brute force attacks to access user accounts.

Please see configuration dist file for new config options.
Please import SQL upgrade 007 to add new column to user accounts table.

Addresses #670 and should be merged once tested.
2013-12-07 22:14:14 +01:00
Sebastian Grewe
f67e63b6fc [REFACTOR] Refactored classes for error handling
* [ADDED] More error codes
* [MODIFIED] Class updates to use Base Class all the time
* [MODIFIED] Cronjobs have been slightly adjusted
* [ADDED] More base class features
2013-11-05 14:34:31 +01:00
Sebastian Grewe
0dd1cc7d50 template updates for new empty content 2013-09-09 07:46:36 +02:00
Sebastian Grewe
fcf5a21ce3 Adding QRCodes under Accounts
* Added: API String QR Code for #582 and #591

This will allow more QRCodes being added that are specific to an
account. The require library is added and the API string can be used as
an example how codes are generated.

Fixes #582
2013-08-14 11:44:29 +02:00
Sebastian Grewe
1a459a7913 Adding transaction summary by types
Addresses #581
2013-08-08 12:02:39 +02:00
Sebastian Grewe
4eb6c59cb3 Refactored getTransactions, unified admin/user view
* Removed getAllTransactions method
* Unified getTransactions for users and admins
* Added filter abilities to user transaction view

This should speed up things a fair bit for transaction heavy pools.

Addresses #536
2013-08-01 11:00:54 +02:00
Sebastian Grewe
35d1f5fa92 Merge pull request #498 from TheSerapher/manual-payout-cron
Adding manual payout cron
2013-07-23 05:36:49 -07:00
Sebastian Grewe
7209f570f4 properly fetch account balance 2013-07-23 14:16:20 +02:00
Sebastian Grewe
760f1a679e Allow admin to disable notification system
This addresses #497 and allows the admins to disable notifications
through the admin panel. Might be used by those relying on clients using
the API instead.

Once merged it will fix #497.
2013-07-23 13:06:38 +02:00
Sebastian Grewe
ee5e2c46c6 Adding manual payout cron
This will avoid double payouts via the website. Payouts will be
requested by users and processed by a cron. If, for whatever reason,
users do add two requests (it is checked if a payout exists) they would
only have one successful payout until their account balance is back up
to a save value to trigger the payout.

This should fix any issues with manual payouts being exploited through
the website. Will require some testing by others to ensure things work
as expected.
2013-07-22 16:14:22 +02:00
Sebastian Grewe
7fce187ab0 Admin Panel Setting to disable/enable AP/MP
This will allow admins to temporarily or permanantly enable and disable
auto and manual payout processing.

Fixes #488
2013-07-19 11:12:28 +02:00
Sebastian Grewe
7b929ed3e4 Fixing PHP Warning on resetting failed login count
Addresses #330 and further cleans PHP Log
2013-07-15 16:16:40 +02:00
Sebastian Grewe
7f4f5cd343 Make invitations configurable via admin panel
Invitations can now be configured through admin panel settings. By
default, invitations are enabled. Invitation system is also available if
registrations are disabled. To completely remove the ability of new
users to sign up, disable both registration and invitations.

Fixes #330
2013-07-15 12:43:29 +02:00
Sebastian Grewe
bd32dfa9f8 Adding invitation system to mmcfe-ng core
This will allow users to send invitations to other people via email.
Each account will still need to confirm the email address if the option
is enabled.

Addresses #330, will need to allow pool operators to enable this feature
even with registrations turned off.
2013-07-15 12:26:31 +02:00
Sebastian Grewe
0ede05a6fd Adding email verification
* Adding mail verification during account registration
* Added new dist file option for mail verification
* Added account confirmation page using tokens
* Added mail class into user class for password resets
* Moved password reset template
* Adjusted account registration page
* Adjusted user class for email confirmation

Also fixed a bug with smarty_cache_key not being used properly if smarty
is disabled. Key still needs to be available even if caching is disabled

Addresses #330 and prepare the ticket for invitation only system.
2013-07-15 12:26:31 +02:00
Sebastian Grewe
8ec1d2cab3 Adding anonymous account support
* Added anonymous flag to accounts table
* Added checkbox for anonymous flag in edit account page
* Updated user class to support new flag
* Updated statistics class to support anonymous and donations
* Updated all templates showing usernames to show anonymous instead
* Added new SQL `ALTER TABLE` file for upgrading the table

Fixes #419 once merged.
2013-07-12 10:33:42 +02:00
Sebastian Grewe
17829cfd4a always assign default content 2013-07-11 09:13:50 +02:00
Sebastian Grewe
0c014da726 unknown index PHP warning fix 2013-07-10 10:44:10 +02:00
Sebastian Grewe
94d9c1eb4c Added cronjob monitoring to admin panel
* 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
2013-07-10 10:40:11 +02:00
Sebastian Grewe
591fc3733b removing error reporting for debugging 2013-07-02 21:10:12 +02:00
Sebastian Grewe
7e4938f279 Fixing PHP warnings on account workers page
* Fixes PHP Warning if no workers are updated
* Fixes PHP Warning in worker class if data is empty

Fixes #339
2013-07-02 21:08:26 +02:00
Sebastian Grewe
2dd333b5d8 Changing wallet error message from litecoind
Since plenty scrypt based currencies are supported, changed error
message to say `wallet` instead of `litecoind` when failing to connect
to RPC service.
2013-07-01 12:47:33 +02:00
Sebastian Grewe
d630329055 Display error message to user on failed logins
Warn a user with an error that there have been failed login attempts
for their account. Login errors can be cleared by clicking on the URL in
the message itself.

Fixes #240
2013-06-23 20:58:42 +02:00
Sebastian Grewe
9bde3d979c removed whitespace 2013-06-17 11:19:05 +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
0817befaaa Further cleanup to reduce PHP notice warnings 2013-06-14 13:51:06 +02:00
Sebastian Grewe
cc046a286c fixing missing transactions table 2013-06-13 16:34:04 +02:00
Sebastian Grewe
42b6d4b3b2 Adding support for user locking
* Currently no GUI, use DB access to change the row entry
* Upgraded Database table `accounts` with upgrade SQL
* Updated `admin` field to `is_admin` as boolean
* Modified pages, classes, templates to support is_admin and is_locked

Addresses #147
2013-06-13 11:36:28 +02:00
Sebastian Grewe
8859f0c091 forgot to add the actual files :/ 2013-06-13 09:21:08 +02:00
Sebastian Grewe
13fc01243e Adding configurable currency name to global config
Addresses #138
2013-06-13 09:21:07 +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
da6e217ac2 removing debug dump output 2013-06-10 20:23:53 +02:00
Sebastian Grewe
d2daed3317 Fixing montoring checkboxes
This will fix #163
2013-06-10 20:21:42 +02:00
Sebastian Grewe
b1d698e686 Allow users to change their email address
* Added email to account page
* No confirmation required as of yet

Fixes #142
2013-06-10 10:54:57 +02:00
Sebastian Grewe
b1f3c9bece Fixing manual payout race condition
* Mark manual payout active
* Run payout logics
* Reset manual payout

This ensures only one manual transaction can be run at a time.
If any users starts a manual payout others have to wait until the site
completed loading and finished the transaction process.

As long as we don't have too many users doing a manual payout at the
same time this should not be an issue. Best for users is using auto
payouts anyway.

This addresses #149
2013-06-10 10:38:05 +02:00
Sebastian Grewe
463f199040 Update edit.inc.php
Emergency fix: Transactions are not aborted if RPC transfer failed.
2013-06-10 11:31:49 +03:00
Sebastian Grewe
b2b853d3e0 Added manual payout notification
* Added mail template for manual payouts
* Added code to account page to notify via mail on payout
* Added new option to notification setting template

Adds another feature to #144
2013-06-09 15:24:58 +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
6a8979d20b Fixing critical issue with manual- and autopayouts
This is a proposed fix for #128:

* Mark auto_payout running via DB setting, unlock when done
* Just before actually sending money, check for running cron

Please refer to the ticket for details
2013-06-06 23:23:54 +02:00
Sebastian Grewe
6c4fb84ee9 Adding min/max threshold configuration
* Check for min/max values set for auto payouts
* Display error messages to the user
* Sanitize values just in case we fall through the validation
* Updated template and class
* New configuration option added! Update your local configs!

Fixes #108
2013-06-05 09:11:25 +02:00
Sebastian Grewe
e37fb70a46 Do not deduct fees from balance when transmitting
Fixes #106, we want to transfer the entire balance and let the RPC
server deduct any fees that might apply.
2013-06-04 20:51:24 +02:00