Bug #3354
closed
After registration triggers altering $user variables no longer function
Added by krileon over 12 years ago.
Updated over 12 years ago.
Description
Due to the storeDatabaseValue usage, specifically storeBlock, in the activate function to send notifications it is loading in an out of date instance of $user via ->load resulting in old values storing or being missing entirely. Ideally it should do the same as $oldUserComplete and remap the existing object to a new variable ($user).
This could be causing numerous problems elsewhere that act on after registration triggers.
Files
- File 3354.patch added
- Status changed from Assigned to Resolved
- Assignee changed from krileon to beat
- % Done changed from 0 to 100
This only affects registrations that are immediately able to login (no confirmation and no approval). However, there's no telling where this usage could've also been causing problems.
The patch parses $this into $user as it does with $oldUserComplete to ensure an exact 1:1 object. $user could actually be removed and use $this directly, as well which works but would be too large a change for just a bug fix.
- Priority changed from Normal to Urgent
CB 1.8 pre-patched file uploaded for users needing a quick fix and unsure how to apply patches.
- File deleted (
cb.tables.php)
- File deleted (
3354.patch)
- Status changed from Resolved to Assigned
- Assignee changed from beat to krileon
- % Done changed from 100 to 0
Patch removed as stored plaintext passwords. Re-reviewing.
New patch resolves cleartext storage.
- Status changed from Resolved to Closed
- Estimated time set to 2:00 h
Committed in r1797. Thanks Kyle.
To Test:
Change status of user: approve, block, confirm in Users Manager list.
Also available in: Atom
PDF