Commit Graph

85 Commits

Author SHA1 Message Date
xisi
3006cb544f Reworked csrf tokens, now enabled globally
The way this now works is, if csrf is enabled:
 * Any new or existing template can have csrf protection by adding the hidden input ctoken that's in this batch to its form, removes any logic in templates
 * Page controllers that already exist have been updated, new ones only require checking if csrf is enabled and valid
2014-01-24 13:00:24 -05:00
Sebastian Grewe
a1a3d7e873 [IMPROVED] Added donation minimum and rounding
* [ADDED] Config option `$config['donate_threshold']['min'] = 1;`
* [VERSION] Incremented config file version to `0.0.6`
* [CHANGED] Round donations to at least two digits
* [CHANGED] Honor minimum set pool donation percentage
* [UPDATED] Account edit template

Fixes #1475 once merged
2014-01-24 10:06:13 +01:00
xisi
a3314fa81e Cleaned up login page logic a bit more
Fixed up CSRF tokens so rollover minutes/hours are now checked and valid
2014-01-23 11:01:30 -05:00
nonstopmine
bab002d9f8 Update edit.inc.php
txfee is old variable, replaced with txfee_manual
2014-01-20 22:32:04 +02:00
xisi
fd49e0eb78 disabled is actually correct to use in cash out form, we want the css props
slightly optimization
2014-01-20 04:41:13 -05:00
xisi
03e0b2e51d request fiddling 2014-01-20 04:41:13 -05:00
xisi
76a67cb71a Changed the config options for CSRF/disabling forms
* Now an array to disable with granularity
 * Fixed all CSRF tokens back to 1 min
 * Added CSRF protection for unlock account
 * Unified error message for all csrf tokens
 * Fixed a few issues with last commit
2014-01-20 04:41:13 -05:00
xisi
5e5e751271 switched account edit csrf token to 1 min now that saving works on an incorrect entry 2014-01-20 04:40:38 -05:00
xisi
cc6e58084f Fixed an bug where a notice could be thrown on the edit page under the right conditions
Cleaned up login page logic which should fix #1459 & #1461
Fixed a bug in tools class where an incorrect config setting could throw a notice
2014-01-20 04:40:38 -05:00
xisi
62e341b877 finally cleaned up the edit account page to my liking
fixed change I made to test a fix for someone who was having issues
2014-01-20 04:38:53 -05:00
xisi
fed3981979 fixed isTokenValid, started work on edit fixes, recaptcha fix test 2014-01-20 04:38:25 -05:00
xisi
15eca659b9 fixed a bug in edit account template
moved csrf token to above template in smarty assigns
fixed a bug in user class
remove small login/fix header to catch up
2014-01-20 04:30:17 -05:00
xisi
8756036646 cleaned up account edit csrf slightly
added csrf protection to workers under sitewide config
added csrf protection to notifications under sitewide config
added csrf protection to invitations under sitewide config
cleaned up login page csrf
cleaned up contactform/contactform page
cleaned up register/register page
moved config->csrf->forms->register to sitewide
added login ip/user/time to notification on login
2014-01-20 04:29:45 -05:00
xisi
e5c9720174 Finished cleanup of account edit page
added csrf protection to account edit page under sitewide config
escaped all instances of CTOKEN for csrf in smarty templates
2014-01-20 04:29:13 -05:00
xisi
9ccb5e15bc refactored old token usage in account edit page 2014-01-20 04:27:58 -05:00
xisi
e7725399c2 change function name for sending 2f emails 2014-01-16 05:55:57 -05:00
xisi
2d0938b35b [ADDED] Simple CSRF protection tokens
* Adds config options for disabling, timeout lead time, and forms
 * Adds another salt in config that's used in the token
 * Adds protection for login form by default
2014-01-16 05:55:57 -05:00
xisi
802930cba1 save old token to use in case we error out 2014-01-16 05:53:36 -05:00
xisi
ed8349ef50 works as far as I can tell 2014-01-16 05:53:36 -05:00
xisi
40d09a4ee4 oops, forgot to make sure we're auth'ed 2014-01-16 05:53:36 -05:00
xisi
a598eec924 fix sync changes done in edit.inc.php at the end of request 2014-01-16 05:53:36 -05:00
xisi
1b1f552567 fix cosmetic issue #2 2014-01-16 05:53:36 -05:00
xisi
a0ecbd0294 fix cosmetic issue 2014-01-16 05:53:36 -05:00
xisi
d9d678be61 retooled most of the email confirmation setup 2014-01-16 05:53:36 -05:00
xisi
ef904858ae [Addition] E-mail confirmations for user actions
* If enabled, sends e-mail to confirm user withdraws, edits and pw changes
 * Adds 4 config options, enabled + individual settings
 * Adds 3 new token_types
2014-01-16 05:42:43 -05:00
nicoschtein
064dfe09df Changed txfee to txfee_manual in account/edit.inc.php 2014-01-14 19:16:27 -02:00
Neozonz
1be228812d [FIX] Type Success on notifications 2014-01-13 17:27:50 -05:00
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