includes();
POKIT_Install::maybe_upgrade();
POKIT_Orders::init();
POKIT_Product_Admin::init();
POKIT_Frontend::init();
POKIT_Cart::init();
POKIT_Release::init();
POKIT_Account::init();
POKIT_Emails::init();
POKIT_Shortcodes::init();
POKIT_Blocks::init();
if ( is_admin() ) {
POKIT_Settings::init();
POKIT_Admin::init();
}
add_action( 'init', array( $this, 'maybe_flush_rewrite' ), 99 );
add_filter( 'plugin_action_links_' . plugin_basename( POKIT_FILE ), array( $this, 'action_links' ) );
}
/**
* Load files.
*/
private function includes() {
$inc = POKIT_PATH . 'includes/';
require_once $inc . 'class-pokit-install.php';
require_once $inc . 'functions.php';
require_once $inc . 'class-pokit-records.php';
require_once $inc . 'class-pokit-orders.php';
require_once $inc . 'class-pokit-product-admin.php';
require_once $inc . 'class-pokit-frontend.php';
require_once $inc . 'class-pokit-cart.php';
require_once $inc . 'class-pokit-release.php';
require_once $inc . 'class-pokit-account.php';
require_once $inc . 'class-pokit-emails.php';
require_once $inc . 'class-pokit-shortcodes.php';
require_once $inc . 'class-pokit-blocks.php';
require_once $inc . 'admin/class-pokit-settings.php';
require_once $inc . 'admin/class-pokit-admin.php';
}
/**
* Flush rewrite rules once after activation so /my-account/pre-orders/ works.
*/
public function maybe_flush_rewrite() {
if ( 'yes' === get_option( 'pokit_flush_rewrite' ) ) {
delete_option( 'pokit_flush_rewrite' );
flush_rewrite_rules();
}
}
/**
* Plugin list links.
*
* @param array $links Links.
* @return array
*/
public function action_links( $links ) {
$extra = array(
'' . esc_html__( 'Settings', 'shipclock-pre-orders' ) . '',
'' . esc_html__( 'Pre-orders', 'shipclock-pre-orders' ) . '',
);
if ( ! POKIT_License::is_pro() ) {
$extra[] = '' . esc_html__( 'Go Pro', 'shipclock-pre-orders' ) . '';
}
return array_merge( $extra, $links );
}
}