set_demo_mode(); } // instance public static function instance() { if ( is_null( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } public function add_about_menu() { add_management_page( 'Codestar Framework', 'Codestar Framework', 'manage_options', 'csf-welcome', array( $this, 'add_page_welcome' ) ); } public function add_page_welcome() { $section = ( ! empty( $_GET['section'] ) ) ? sanitize_text_field( wp_unslash( $_GET['section'] ) ) : ''; CSF::include_plugin_file( 'views/header.php' ); // safely include pages switch ( $section ) { case 'quickstart': CSF::include_plugin_file( 'views/quickstart.php' ); break; case 'documentation': CSF::include_plugin_file( 'views/documentation.php' ); break; case 'relnotes': CSF::include_plugin_file( 'views/relnotes.php' ); break; case 'support': CSF::include_plugin_file( 'views/support.php' ); break; case 'free-vs-premium': CSF::include_plugin_file( 'views/free-vs-premium.php' ); break; default: CSF::include_plugin_file( 'views/about.php' ); break; } CSF::include_plugin_file( 'views/footer.php' ); } public static function add_plugin_action_links( $links, $plugin_file ) { if ( $plugin_file === 'codestar-framework/codestar-framework.php' && ! empty( $links ) ) { $links['csf--welcome'] = 'Settings'; if ( ! CSF::$premium ) { $links['csf--upgrade'] = 'Upgrade'; } } return $links; } public static function add_plugin_row_meta( $links, $plugin_file ) { if ( $plugin_file === 'codestar-framework/codestar-framework.php' && ! empty( $links ) ) { $links['csf--docs'] = 'Documentation'; } return $links; } public function set_demo_mode() { $demo_mode = get_option( 'csf_demo_mode', false ); $demo_activate = ( ! empty( $_GET[ 'csf-demo' ] ) ) ? sanitize_text_field( wp_unslash( $_GET[ 'csf-demo' ] ) ) : ''; if ( ! empty( $demo_activate ) ) { $demo_mode = ( $demo_activate === 'activate' ) ? true : false; update_option( 'csf_demo_mode', $demo_mode ); } if ( ! empty( $demo_mode ) ) { CSF::include_plugin_file( 'samples/admin-options.php' ); if ( CSF::$premium ) { CSF::include_plugin_file( 'samples/customize-options.php' ); CSF::include_plugin_file( 'samples/metabox-options.php' ); CSF::include_plugin_file( 'samples/nav-menu-options.php' ); CSF::include_plugin_file( 'samples/profile-options.php' ); CSF::include_plugin_file( 'samples/shortcode-options.php' ); CSF::include_plugin_file( 'samples/taxonomy-options.php' ); CSF::include_plugin_file( 'samples/widget-options.php' ); CSF::include_plugin_file( 'samples/comment-options.php' ); } } } } CSF_Welcome::instance(); }