| | |
| | | |
| | | use JVBase\integrations\Umami; |
| | | use JVBase\managers\Cache; |
| | | use JVBase\managers\DirectoryManager; |
| | | use JVBase\managers\ReferralManager; |
| | | use JVBase\managers\SEO\SEOAdminPage; |
| | | use JVBase\utility\Features; |
| | |
| | | |
| | | function jvbActivatePlugin():void |
| | | { |
| | | ob_start(); |
| | | $validator = new JVBase\utility\Validator(); |
| | | $validation = $validator->validateAll(); |
| | | error_log('Validation result: '.print_r($validation, true)); |
| | |
| | | error_log('Adding Umami tables'); |
| | | Umami::createTables(); |
| | | } |
| | | error_log('Activation done! Huzzah!'); |
| | | |
| | | $output = ob_get_clean(); |
| | | if ( $output ) { |
| | | // Grab a backtrace to see what caused the output |
| | | $trace = debug_backtrace( DEBUG_BACKTRACE_IGNORE_ARGS ); |
| | | $formatted = []; |
| | | foreach ( $trace as $step ) { |
| | | if ( isset( $step['file'], $step['line'] ) ) { |
| | | $formatted[] = $step['file'] . ':' . $step['line']; |
| | | } |
| | | } |
| | | |
| | | error_log( "⚠️ Plugin activation produced unexpected output (" . strlen( $output ) . " chars)" ); |
| | | error_log( "Output: " . trim( $output ) ); |
| | | error_log( "Backtrace: " . implode( ' <- ', $formatted ) ); |
| | | if (Features::forSite()->has('is_directory')) { |
| | | error_log('Activating DirectoryManager'); |
| | | DirectoryManager::activate(); |
| | | } |
| | | error_log('Activation done! Huzzah!'); |
| | | } |
| | | |
| | | function jvbAddAdminCaps() |
| | |
| | | $pages = new WP_Query([ |
| | | 'post_type' => BASE.'directory', |
| | | 'posts_per_page' => -1, |
| | | 'post_status' => 'any', |
| | | 'post_status' => ['publish', 'draft','trash'], |
| | | 'fields' => 'ids' |
| | | ]); |
| | | if ($pages->have_posts()) { |
| | | foreach ($pages->posts as $ID) { |
| | | wp_delete_post($ID, true); |
| | | } |
| | | } |
| | | foreach ($pages->posts as $ID) { |
| | | wp_delete_post($ID, true); |
| | | } |
| | | |
| | | } |
| | | function jvbClearSchedules() |
| | | { |