| @@ -1,8 +1,8 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | /** |
| 3 | 3 | * @package FireBox |
| 4 | - * @version 3.1.9 Free | |
| 4 | + * @version 3.1.14 Free | |
| 5 | 5 | * |
| 6 | 6 | * @author FirePlugins <[email protected]> |
| 7 | 7 | * @link https://www.fireplugins.com |
| 8 | 8 | * @copyright Copyright © 2026 FirePlugins All Rights Reserved |
| @@ -19,13 +19,24 @@ | ||
| 19 | 19 | class Activation |
| 20 | 20 | { |
| 21 | 21 | /** |
| 22 | 22 | * Creates library directories. |
| 23 | - * | |
| 23 | + * | |
| 24 | 24 | * @return void |
| 25 | 25 | */ |
| 26 | 26 | public static function createLibraryDirectories() |
| 27 | 27 | { |
| 28 | + /** | |
| 29 | + * This runs during activation, where the framework's autoloader does not | |
| 30 | + * exist yet: it is registered on `init`, and WordPress includes the | |
| 31 | + * plugin for the first time long after that hook has fired. The two | |
| 32 | + * classes below are therefore loaded by hand rather than left to the | |
| 33 | + * autoloader — every caller needed to remember this, and one that forgot | |
| 34 | + * took activation down with a fatal. | |
| 35 | + */ | |
| 36 | + require_once FBOX_PLUGIN_DIR . 'Inc/Framework/Inc/Helpers/Directory.php'; | |
| 37 | + require_once FBOX_PLUGIN_DIR . 'Inc/Framework/Inc/Helpers/WPHelper.php'; | |
| 38 | + | |
| 28 | 39 | // Create /wp-content/uploads/firebox and secure it |
| 29 | 40 | \FPFramework\Helpers\Directory::createDirs(\FPFramework\Helpers\WPHelper::getPluginUploadsDirectory('firebox')); |
| 30 | 41 | |
| 31 | 42 | // Create /wp-content/uploads/firebox/templates and secure it |