* @version 2.0.0 * @package Core */ if ( ! class_exists( 'Flippercode_Product_Overview' ) ) { /** * FlipperCode Overview Setup Class. * * @author Flipper Code * * @version 2.0.0 * * @package Core */ class Flippercode_Product_Overview { public $PO; public $productOverview; public $productName; public $productSlug; public $productTagLine; public $productTextDomain; public $productIconImage; public $productVersion; private $commonBlocks; private $productSpecificBlocks; private $is_common_block; private $productBlocksRendered = 0; private $blockHeading; private $blockContent; private $blockClass = ''; private $commonBlockMarkup = ''; private $pluginSpecificBlockMarkup = ''; private $finalproductOverviewMarkup = ''; private $allProductsInfo = array(); private $message = ''; private $error; private $docURL; private $demoURL; private $productImagePath; private $isUpdateAvailable; private $multisiteLicence; private $productSaleURL; function __construct( $pluginInfo ) { $this->commonBlocks = array( 'product-activation', 'newsletter', 'create_support_ticket', 'hire_wp_expert' ); if ( isset( $pluginInfo['excludeBlocks'] ) ) { $this->commonBlocks = array_diff( $this->commonBlocks, $pluginInfo['excludeBlocks'] ); } $this->init( $pluginInfo ); $this->renderOverviewPage(); } function renderOverviewPage() { ?>
productTextDomain ); ?> data-current-product-slug=productSlug ); ?> data-product-version = productVersion ); ?> data-product-name = "productName ); ?>" >
renderBlocks(); ?>
$value ) { $this->$pluginProperty = $value; } } function get_mailchimp_integration_form() { $form = ''; $form .= '
'; return $form; } function init( $pluginInfo ) { $this->setup_plugin_info( $pluginInfo ); $this->PO = $this->productOverview; foreach ( $this->commonBlocks as $block ) { switch ( $block ) { case 'product-activation': $this->blockHeading = '

' . $this->PO['product_info_heading'] . '

'; $this->blockContent .= '

' . $pluginInfo['productName'] . '

' . $this->PO['installed_version'] . ' ' . $this->productVersion . '

' . $this->PO['product_info_desc'] . '

' . $this->PO['live_demo_caption'] . '
'; break; case 'newsletter': $this->blockHeading = '

' . $this->PO['subscribe_now']['heading'] . '

'; $this->blockContent = '

' . $this->PO['subscribe_now']['desc1'] . '
' . $this->PO['subscribe_now']['desc2'] . '

' . $this->get_mailchimp_integration_form() . '
'; break; case 'create_support_ticket': $this->blockHeading = '

' . $this->PO['create_support_ticket']['heading'] . '

'; $this->blockContent = '

' . $this->PO['create_support_ticket']['desc1'] . '



' . $this->PO['create_support_ticket']['link']['label'] . '
'; break; case 'hire_wp_expert': $this->blockHeading = '

' . $this->PO['hire_wp_expert']['heading'] . '

'; $this->blockContent = '

' . $this->PO['hire_wp_expert']['desc'] . '

' . $this->PO['hire_wp_expert']['desc1'] . '

' . $this->PO['hire_wp_expert']['link']['label'] . '
'; break; } $info = array( $this->blockHeading, $this->blockContent, $block ); $this->commonBlockMarkup .= $this->get_block_markup( $info ); } } function get_block_markup( $blockinfo ) { $markup = '
' . $blockinfo[0] . '
' . $blockinfo[1] . '
'; $this->productBlocksRendered++; if ( $this->productBlocksRendered % 2 == 0 ) { $markup .= '
'; } return $markup; } function renderBlocks() { $this->finalproductOverviewMarkup = $this->commonBlockMarkup . $this->pluginSpecificBlockMarkup; echo $this->finalproductOverviewMarkup; } } }