%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 );
?>