Commit Graph

4 Commits

Author SHA1 Message Date
Sergey Biryukov 55d05b56c3 Bootstrap/Load: Set expiration of the recovery mode cookie to the same amount of time for which the token in it is valid: a week by default.
Props david.binda, TimothyBlynJacobs.
Fixes #47480.
Built from https://develop.svn.wordpress.org/trunk@45545


git-svn-id: http://core.svn.wordpress.org/trunk@45356 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-06-17 19:17:54 +00:00
Sergey Biryukov d5c77c833a Docs: Add missing `@since` tag for `WP_Recovery_Mode_Cookie_Service::parse_cookie()`.
Props mukesh27.
Fixes #46993.
Built from https://develop.svn.wordpress.org/trunk@45253


git-svn-id: http://core.svn.wordpress.org/trunk@45062 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-04-19 14:00:51 +00:00
Sergey Biryukov c75d21589d Bootstrap/Load: Remove `WP_Recovery_Mode_Cookie_Service` constructor to avoid referencing cookie constants before they are defined.
Instantiating `WP_Recovery_Mode` should no longer have any required timing.

Props TimothyBlynJacobs, lkraav.
Fixes #46882.
Built from https://develop.svn.wordpress.org/trunk@45205


git-svn-id: http://core.svn.wordpress.org/trunk@45014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-04-15 22:44:52 +00:00
Felix Arntz 3a77265148 Bootstrap/Load: Introduce a recovery mode for fixing fatal errors.
Using the new fatal handler introduced in [44962], an email is sent to the admin when a fatal error occurs. This email includes a secret link to enter recovery mode. When clicked, the link will be validated and on success a cookie will be placed on the client, enabling recovery mode for that user. This functionality is executed early before plugins and themes are loaded, in order to be unaffected by potential fatal errors these might be causing.

When in recovery mode, broken plugins and themes will be paused for that client, so that they are able to access the admin backend despite of these errors. They are notified about the broken extensions and the errors caused, and can then decide whether they would like to temporarily deactivate the extension or fix the problem and resume the extension.

A link in the admin bar allows the client to exit recovery mode.

Props timothyblynjacobs, afragen, flixos90, nerrad, miss_jwo, schlessera, spacedmonkey, swissspidy.
Fixes #46130, #44458.

Built from https://develop.svn.wordpress.org/trunk@44973


git-svn-id: http://core.svn.wordpress.org/trunk@44804 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-03-21 21:53:51 +00:00