get_upgrade_url() : NovoVerify_Config::AUTHOR_URI; } /** * Free trial URL. * * @return string */ public static function trial_url() { return novoverify_fs() ? novoverify_fs()->get_trial_url() : NovoVerify_Config::AUTHOR_URI; } /** * Stores the dismissal for the current user. */ public function dismiss() { if ( ! current_user_can( NovoVerify_Config::CAPABILITY ) ) { wp_die( esc_html__( 'You do not have permission to access this page.', 'novoverify' ), 403 ); } check_admin_referer( self::ACTION ); update_user_meta( get_current_user_id(), self::META_KEY, 1 ); wp_safe_redirect( admin_url( 'admin.php?page=novoverify-settings' ) ); exit; } /** * Renders the box unless Pro is active or the user dismissed it. */ public function render_box() { if ( novoverify_is_pro() || get_user_meta( get_current_user_id(), self::META_KEY, true ) ) { return; } $plan = NovoVerify_Config::pro_plan(); $features = array( __( 'Generate thousands of unique codes in one step', 'novoverify' ), __( 'QR codes (PNG/SVG) and printable label sheets', 'novoverify' ), __( 'Statistics and e-mail alerts for suspicious codes', 'novoverify' ), __( 'Product details, WooCommerce link and custom design', 'novoverify' ), ); $dismiss = wp_nonce_url( admin_url( 'admin-post.php?action=' . self::ACTION ), self::ACTION ); ?>