addNotice($msg); $notice->showNotice(); } private static function hasActiveCompatiblePlugins() { $activePlugins = static::getActiveCompatiblePlugins(); return !empty($activePlugins); } private static function getActiveCompatiblePlugins() { $supportedPlugins = [ 'wpforms/wpforms.php' => 'WPForms', 'wpforms-lite/wpforms.php' => 'WPForms', 'contact-form-7/wp-contact-form-7.php' => 'Contact Form 7', 'ninja-forms/ninja-forms.php' => 'Ninja Forms', 'gravityforms/gravityforms.php' => 'Gravity Forms', 'caldera-forms/caldera-core.php' => 'Caldera Forms' ]; $activePlugins = []; foreach ($supportedPlugins as $plugin => $name) { if (is_plugin_active($plugin)) { $activePlugins[] = $name; } } return $activePlugins; } private static function getMessage() { $activePlugins = static::getActiveCompatiblePlugins(); $pluginNames = implode(', ', $activePlugins); $message = sprintf( 'We noticed you have %s installed. You can easily migrate your existing forms to Fluent Forms with just a few clicks.', $pluginNames ?: 'compatible plugins' ); return [ 'name' => 'migration_notice', //ff_notice_migration_notice 'title' => '', 'message' => $message, 'links' => [ [ 'href' => admin_url('admin.php?page=fluent_forms_transfer#migrator'), 'btn_text' => 'Migrate Now', 'btn_atts' => 'class="mr-1 el-button--success el-button--mini"', ], [ 'href' => admin_url('admin.php?page=fluent_forms'), 'btn_text' => 'Maybe Later', 'btn_atts' => 'class="mr-1 el-button--info el-button--soft el-button--mini ff_nag_cross" data-notice_type="temp" data-notice_name="migration_notice"', ], [ 'href' => admin_url('admin.php?page=fluent_forms'), 'btn_text' => 'Don\'t show again', 'btn_atts' => 'class="text-button el-button--mini ff_nag_cross" data-notice_type="permanent" data-notice_name="migration_notice"', ], ], ]; } }