%s', esc_url( Menu::url( 'reactwoo-atomic-elements' ) ), esc_html__( 'View elements', 'reactwoo-atomic' ) ); Shell::render( 'reactwoo-atomic', __( 'Overview', 'reactwoo-atomic' ), __( 'Manage your ReactWoo Atomic installation, licence and active elements.', 'reactwoo-atomic' ), array( __CLASS__, 'body' ), $action ); } /** * @return void */ public static function body() { $all = Catalog::all(); $enabled = Enabled_Store::get_enabled_ids(); $activatable_total = 0; foreach ( $all as $item ) { if ( Enabled_Store::is_activatable( (string) $item['id'] ) ) { ++$activatable_total; } } $payload = Enabled_Store::estimated_payload_kb(); $integ = Detector::connected_count(); $attention = Detector::attention_count(); $licence = Licence_State::current(); $healthy = 0 === $attention && ( Licence_State::ACTIVE === $licence['state'] || Licence_State::FREE === $licence['state'] ); $steps = array(); $core = null; foreach ( Detector::cards() as $card ) { if ( 'reactwoo-core' === $card['id'] ) { $core = $card; break; } } if ( $core && ! empty( $core['installed'] ) && empty( $core['connected'] ) ) { $steps[] = __( 'Connect ReactWoo Core rules', 'reactwoo-atomic' ); } if ( ! Enabled_Store::is_enabled( 'reactwoo-smart-menu' ) ) { $steps[] = __( 'Configure your first smart menu', 'reactwoo-atomic' ); } if ( Edition::is_pro() && ! Enabled_Store::is_enabled( 'reactwoo-product-grid' ) ) { $steps[] = __( 'Enable the WooCommerce conversion suite', 'reactwoo-atomic' ); } elseif ( ! Edition::is_pro() && ! Distribution::is_wporg() ) { $steps[] = __( 'Upgrade to Atomic Pro for dynamic and commerce elements', 'reactwoo-atomic' ); } $steps = array_slice( $steps, 0, 3 ); ?>

    $step ) : ?>