Refactoring and improvements of the accesslib.php library including prevention of access for not-logged-in users when forcelogin enabled, improved context caching, OOP refactoring of contexts, fixed context loading, deduplication of role definitions in user sessions, installation improvements, decoupling of enrolment checking from capability loading, added detection of deleted and non-existent users in has_capability(), new function accesslib test, auth and enrol upgrade notes.
More details are available in tracker subtasks.
The problem is that we would have to purge files table too, but in any case this is absolutely forbidden for production sites. People have to use command line deleting on dev sites, sorry.
Why? Because this tool does not support contexts, allows data modifications and is intended only for admins. It is still linked from admin reports for now, we will move it elsewhere once we know where to add general new reports.
AMOS BEGIN
MOV [pluginname,report_spamcleaner],[pluginname,tool_spamcleaner]
MOV [spamauto,report_spamcleaner],[spamauto,tool_spamcleaner]
MOV [spamcannotdelete,report_spamcleaner],[spamcannotdelete,tool_spamcleaner]
MOV [spamcannotfinduser,report_spamcleaner],[spamcannotfinduser,tool_spamcleaner]
MOV [spamcleanerintro,report_spamcleaner],[spamcleanerintro,tool_spamcleaner]
MOV [spamdeleteall,report_spamcleaner],[spamdeleteall,tool_spamcleaner]
MOV [spamdeleteallconfirm,report_spamcleaner],[spamdeleteallconfirm,tool_spamcleaner]
MOV [spamdeleteconfirm,report_spamcleaner],[spamdeleteconfirm,tool_spamcleaner]
MOV [spamdesc,report_spamcleaner],[spamdesc,tool_spamcleaner]
MOV [spameg,report_spamcleaner],[spameg,tool_spamcleaner]
MOV [spamfromblog,report_spamcleaner],[spamfromblog,tool_spamcleaner]
MOV [spaminvalidresult,report_spamcleaner],[spaminvalidresult,tool_spamcleaner]
MOV [spamoperation,report_spamcleaner],[spamoperation,tool_spamcleaner]
MOV [spamresult,report_spamcleaner],[spamresult,tool_spamcleaner]
MOV [spamsearch,report_spamcleaner],[spamsearch,tool_spamcleaner]
AMOS END
New PARAM_COMPONENT, PARAM_AREA and PARAM_PLUGIN + fixing of hopefully all current incorrect parameter types. This should help with diagnosing of incorrectly named 3rd party plugins too.