Skip to content

Commit de8c194

Browse files
tbradshamatticbot
authored andcommitted
CRM: Use version constant for monorepo tooling compatibility (#41408)
* Add version constant to class * Flag version constant for auto-update * Defer to version constant * Use version constant everywhere * Remove unneeded file * Add changelog * Update composer.lock file * Suppress Phan error Committed via a GitHub action: https://github.com/Automattic/jetpack/actions/runs/13077927822 Upstream-Ref: Automattic/jetpack@4a02ca9
1 parent 2031457 commit de8c194

25 files changed

+217
-373
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1010
This is an alpha version! The changes listed here are not final.
1111

1212
### Changed
13+
- Code: Introduce version constant in main plugin class.
1314
- Updated package dependencies.
1415

1516
### Fixed

admin/activation/before-you-go.php

+4-5
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,12 @@
2222

2323
// js
2424
wp_enqueue_script( 'jquery' );
25-
// not really needed. wp_enqueue_script('zbsbeforeyougojs', plugins_url('/js/before-you-go/jquery.blockUI.min.js',ZBS_ROOTFILE), array( 'jquery' ), $zbs->version);
2625

2726
// css
28-
wp_enqueue_style( 'zbsbeforeyougocssloadstyles', plugins_url( '/css/before-you-go/loadstyles.min.css', ZBS_ROOTFILE ), array(), $zbs->version );
29-
wp_enqueue_style( 'zbsbeforeyougocssopensans', plugins_url( '/css/before-you-go/opensans' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs->version );
30-
wp_enqueue_style( 'zbsbeforeyougocssadminmin', plugins_url( '/css/before-you-go/admin.min.css', ZBS_ROOTFILE ), array(), $zbs->version );
31-
wp_enqueue_style( 'zbsbeforeyougocssexitform', plugins_url( '/css/before-you-go/zbs-exitform.min.css', ZBS_ROOTFILE ), array(), $zbs->version );
27+
wp_enqueue_style( 'zbsbeforeyougocssloadstyles', plugins_url( '/css/before-you-go/loadstyles.min.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
28+
wp_enqueue_style( 'zbsbeforeyougocssopensans', plugins_url( '/css/before-you-go/opensans' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
29+
wp_enqueue_style( 'zbsbeforeyougocssadminmin', plugins_url( '/css/before-you-go/admin.min.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
30+
wp_enqueue_style( 'zbsbeforeyougocssexitform', plugins_url( '/css/before-you-go/zbs-exitform.min.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
3231
$style_handles = array( 'zbsbeforeyougocssloadstyles', 'zbsbeforeyougocssopensans', 'zbsbeforeyougocssadminmin', 'zbsbeforeyougocssexitform' );
3332

3433
?><!DOCTYPE html>

admin/activation/welcome-to-jpcrm.php

+12-10
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,22 @@
2323
// } Assets we need specifically here
2424

2525
// js
26+
// phpcs:disable WordPress.WP.EnqueuedResourceParameters.NotInFooter
2627
wp_enqueue_script( 'jquery' );
27-
wp_enqueue_script( 'zbswelcomeblock', plugins_url( '/js/welcome-to-zbs/jquery.blockUI.min.js', ZBS_ROOTFILE ), array( 'jquery' ), $zbs->version );
28-
wp_enqueue_script( 'zbswelcomebootstrap', plugins_url( '/js/welcome-to-zbs/bootstrap.min.js', ZBS_ROOTFILE ), array( 'jquery' ), $zbs->version );
29-
wp_enqueue_script( 'zbswelcomewizard', plugins_url( '/js/welcome-to-zbs/wizard2' . wp_scripts_get_suffix() . '.js', ZBS_ROOTFILE ), array( 'jquery' ), $zbs->version );
28+
wp_enqueue_script( 'zbswelcomeblock', plugins_url( '/js/welcome-to-zbs/jquery.blockUI.min.js', ZBS_ROOTFILE ), array( 'jquery' ), $zbs::VERSION );
29+
wp_enqueue_script( 'zbswelcomebootstrap', plugins_url( '/js/welcome-to-zbs/bootstrap.min.js', ZBS_ROOTFILE ), array( 'jquery' ), $zbs::VERSION );
30+
wp_enqueue_script( 'zbswelcomewizard', plugins_url( '/js/welcome-to-zbs/wizard2' . wp_scripts_get_suffix() . '.js', ZBS_ROOTFILE ), array( 'jquery' ), $zbs::VERSION );
3031

3132
// css
32-
wp_enqueue_style( 'zbswelcomebootstrap', plugins_url( '/css/welcome-to-zbs/bootstrap.min.css', ZBS_ROOTFILE ), array(), $zbs->version );
33-
wp_enqueue_style( 'zbswelcomeloadstyles', plugins_url( '/css/welcome-to-zbs/loadstyles' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs->version );
34-
wp_enqueue_style( 'zbswelcomeopensans', plugins_url( '/css/welcome-to-zbs/opensans' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs->version );
35-
wp_enqueue_style( 'zbswelcomeadmin', plugins_url( '/css/welcome-to-zbs/admin.min.css', ZBS_ROOTFILE ), array(), $zbs->version );
36-
wp_enqueue_style( 'zbswelcomeexitform', plugins_url( '/css/welcome-to-zbs/zbs-exitform' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs->version );
37-
wp_enqueue_style( 'zbswelcomeactivation', plugins_url( '/css/welcome-to-zbs/activation.min.css', ZBS_ROOTFILE ), array(), $zbs->version );
38-
wp_enqueue_style( 'zbswelcomewizard', plugins_url( '/css/welcome-to-zbs/wizard' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs->version );
33+
wp_enqueue_style( 'zbswelcomebootstrap', plugins_url( '/css/welcome-to-zbs/bootstrap.min.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
34+
wp_enqueue_style( 'zbswelcomeloadstyles', plugins_url( '/css/welcome-to-zbs/loadstyles' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
35+
wp_enqueue_style( 'zbswelcomeopensans', plugins_url( '/css/welcome-to-zbs/opensans' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
36+
wp_enqueue_style( 'zbswelcomeadmin', plugins_url( '/css/welcome-to-zbs/admin.min.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
37+
wp_enqueue_style( 'zbswelcomeexitform', plugins_url( '/css/welcome-to-zbs/zbs-exitform' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
38+
wp_enqueue_style( 'zbswelcomeactivation', plugins_url( '/css/welcome-to-zbs/activation.min.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
39+
wp_enqueue_style( 'zbswelcomewizard', plugins_url( '/css/welcome-to-zbs/wizard' . wp_scripts_get_suffix() . '.css', ZBS_ROOTFILE ), array(), $zbs::VERSION );
3940
$style_handles = array( 'zbswelcomebootstrap', 'zbswelcomeloadstyles', 'zbswelcomeopensans', 'zbswelcomeadmin', 'zbswelcomeexitform', 'zbswelcomeactivation', 'zbswelcomewizard' );
41+
// phpcs:enable WordPress.WP.EnqueuedResourceParameters.NotInFooter
4042

4143
// } Image URLS
4244
$assetsURLI = ZEROBSCRM_URL . 'i/';

admin/activation/wizard.ajax.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ function zbs_wizard_fin() {
6060
'ef' => $crm_enable_forms,
6161
'ew' => $crm_enable_woo_module,
6262
'ems' => $crm_menu_style,
63-
'v' => $zbs->version,
63+
'v' => $zbs::VERSION,
6464
'cu' => $crm_curr,
6565
);
6666
update_option( 'zbs_initopts_' . time(), $init_options, false );

admin/settings/mail-delivery.page.php

+5-1
Original file line numberDiff line numberDiff line change
@@ -556,5 +556,9 @@
556556

557557
</style>
558558

559-
<?php wp_enqueue_script( 'jpcrm-admin-maildelivery', plugins_url( '/js/jpcrm-admin-maildelivery' . wp_scripts_get_suffix() . '.js', ZBS_ROOTFILE ), array(), $zbs->version ); ?>
559+
<?php
560+
// phpcs:disable WordPress.WP.EnqueuedResourceParameters.NotInFooter
561+
wp_enqueue_script( 'jpcrm-admin-maildelivery', plugins_url( '/js/jpcrm-admin-maildelivery' . wp_scripts_get_suffix() . '.js', ZBS_ROOTFILE ), array(), $zbs::VERSION );
562+
// phpcs:enable WordPress.WP.EnqueuedResourceParameters.NotInFooter
563+
?>
560564
</div>

api/status.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
$reply = array(
1313
'status' => __( 'Successful Connection', 'zero-bs-crm' ),
1414
'message' => __( 'Your API Connection with Jetpack CRM is functioning correctly.', 'zero-bs-crm' ),
15-
'crm_version' => $zbs->version,
15+
'crm_version' => $zbs::VERSION,
1616
'db_version' => $zbs->db_version,
1717
);
1818

composer.json

+3
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@
7777
"link-template": "https://github.com/Automattic/jetpack-crm/compare/${old}...${new}"
7878
},
7979
"release-branch-prefix": "crm",
80+
"version-constants": {
81+
"::VERSION": "includes/ZeroBSCRM.Core.php"
82+
},
8083
"wp-plugin-slug": "zero-bs-crm",
8184
"wp-svn-autopublish": true
8285
}

includes/ZeroBSCRM.AdminStyling.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@ function jpcrm_footer_credit_version( $content ) {
215215
global $zbs;
216216
$showpoweredby_admin = $zbs->settings->get( 'showpoweredby_admin' ) === 1 ? true : false;
217217
if ( $showpoweredby_admin ) {
218-
return sprintf( 'Jetpack CRM v%s', $zbs->version );
218+
return sprintf( 'Jetpack CRM v%s', $zbs::VERSION );
219219
}
220220
##/WLREMOVE
221221

includes/ZeroBSCRM.CSVImporter.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ function zeroBSCRM_CSVImporterLiteadmin_menu() {
7979

8080
global $zbs,$zeroBSCRM_CSVImporterLiteslugs; // req
8181

82-
wp_register_style( 'zerobscrm-csvimporter-admcss', ZEROBSCRM_URL . 'css/ZeroBSCRM.admin.csvimporter' . wp_scripts_get_suffix() . '.css', array(), $zbs->version );
82+
wp_register_style( 'zerobscrm-csvimporter-admcss', ZEROBSCRM_URL . 'css/ZeroBSCRM.admin.csvimporter' . wp_scripts_get_suffix() . '.css', array(), $zbs::VERSION );
8383
$csv_admin_page = add_submenu_page( 'jpcrm-hidden', 'CSV Importer', 'CSV Importer', 'admin_zerobs_customers', $zbs->slugs['csvlite'], 'zeroBSCRM_CSVImporterLitepages_app', 1 ); // phpcs:ignore WordPress.WP.Capabilities.Unknown
8484
add_action( "admin_print_styles-{$csv_admin_page}", 'zeroBSCRM_CSVImporter_lite_admin_styles' );
8585
add_action( "admin_print_styles-{$csv_admin_page}", 'zeroBSCRM_global_admin_styles' ); // } and this.

includes/ZeroBSCRM.Core.php

+18-11
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,19 @@
2020
final class ZeroBSCRM {
2121

2222
/**
23-
* ZeroBSCRM version.
23+
* Jetpack CRM version.
2424
*
2525
* @var string
2626
*/
27-
public $version = '6.5.1';
27+
const VERSION = '6.5.2-alpha';
28+
29+
/**
30+
* Jetpack CRM version (used in various extensions as of January 2025).
31+
*
32+
* @deprecated
33+
* @var string
34+
*/
35+
public $version = '';
2836

2937
/**
3038
* WordPress version tested with.
@@ -545,6 +553,8 @@ public function __get( $key ) {
545553
* Jetpack CRM Constructor.
546554
*/
547555
public function __construct() {
556+
// @phan-suppress-next-line PhanDeprecatedProperty - Define old property for backward compatibility.
557+
$this->version = $this::VERSION;
548558

549559
// Simple global definitions without loading any core files...
550560
// required for verify_minimum_requirements()
@@ -619,10 +629,10 @@ private function verify_minimum_requirements() {
619629
$this->setupUrlsSlugsEtc();
620630

621631
// build message
622-
$message_html = '<p>' . sprintf( esc_html__( 'This version of CRM (%1$s) requires an upgraded database (3.0). Your database is using an older version than this (%2$s). To use CRM you will need to install version 4 of CRM and run the database upgrade.', 'zero-bs-crm' ), $this->version, $this->dal_version ) . '</p>'; // phpcs:ignore WordPress.WP.I18n.MissingTranslatorsComment
632+
$message_html = '<p>' . sprintf( esc_html__( 'This version of CRM (%1$s) requires an upgraded database (3.0). Your database is using an older version than this (%2$s). To use CRM you will need to install version 4 of CRM and run the database upgrade.', 'zero-bs-crm' ), $this::VERSION, $this->dal_version ) . '</p>'; // phpcs:ignore WordPress.WP.I18n.MissingTranslatorsComment
623633

624634
##WLREMOVE
625-
$message_html = '<p>' . sprintf( esc_html__( 'This version of Jetpack CRM (%1$s) requires an upgraded database (3.0). Your database is using an older version than this (%2$s). To use Jetpack CRM you will need to install version 4 of Jetpack CRM and run the database upgrade.', 'zero-bs-crm' ), $this->version, $this->dal_version ) . '</p>'; // phpcs:ignore WordPress.WP.I18n.MissingTranslatorsComment
635+
$message_html = '<p>' . sprintf( esc_html__( 'This version of Jetpack CRM (%1$s) requires an upgraded database (3.0). Your database is using an older version than this (%2$s). To use Jetpack CRM you will need to install version 4 of Jetpack CRM and run the database upgrade.', 'zero-bs-crm' ), $this::VERSION, $this->dal_version ) . '</p>'; // phpcs:ignore WordPress.WP.I18n.MissingTranslatorsComment
626636
$message_html .= '<p><a href="' . esc_url( $this->urls['kb-pre-v5-migration-todo'] ) . '" target="_blank" class="button">' . __( 'Read the guide on migrating', 'zero-bs-crm' ) . '</a></p>';
627637
##/WLREMOVE
628638

@@ -639,7 +649,7 @@ private function verify_minimum_requirements() {
639649
} elseif ( ! function_exists( 'openssl_get_cipher_methods' ) ) {
640650

641651
// build message
642-
$message_html = '<p>' . sprintf( __( 'Jetpack CRM uses the OpenSSL extension for PHP to properly protect sensitive data. Most PHP environments have this installed by default, but it seems yours does not; we recommend contacting your host for further help.', 'zero-bs-crm' ), $this->version, $this->dal_version ) . '</p>';
652+
$message_html = '<p>' . sprintf( __( 'Jetpack CRM uses the OpenSSL extension for PHP to properly protect sensitive data. Most PHP environments have this installed by default, but it seems yours does not; we recommend contacting your host for further help.', 'zero-bs-crm' ), $this::VERSION, $this->dal_version ) . '</p>';
643653
$message_html .= '<p><a href="' . esc_url( 'https://www.php.net/manual/en/book.openssl.php' ) . '" target="_blank" class="button">' . __( 'PHP docs on OpenSSL', 'zero-bs-crm' ) . '</a></p>';
644654

645655
$this->add_wp_admin_notice(
@@ -1326,9 +1336,6 @@ public function includes() {
13261336
// } Put Plugin update message (notifications into the transient /wp-admin/plugins.php) page.. that way the nag message is not needed at the top of pages (and will always show, not need to be dismissed)
13271337
require_once ZEROBSCRM_INCLUDE_PATH . 'ZeroBSCRM.PluginUpdates.php';
13281338

1329-
// v3.0 update coming, warning
1330-
require_once ZEROBSCRM_INCLUDE_PATH . 'ZeroBSCRM.PluginUpdates.ImminentRelease.php';
1331-
13321339
// } FROM PLUGIN HUNT THEME - LOT OF USEFUL CODE IN HERE.
13331340
require_once ZEROBSCRM_INCLUDE_PATH . 'ZeroBSCRM.NotifyMe.php';
13341341

@@ -1596,7 +1603,7 @@ public function preInit() {
15961603

15971604
// } Setup Config (centralises version numbers temp)
15981605
global $zeroBSCRM_Conf_Setup;
1599-
$zeroBSCRM_Conf_Setup['conf_pluginver'] = $this->version;
1606+
$zeroBSCRM_Conf_Setup['conf_pluginver'] = $this::VERSION; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase
16001607
$zeroBSCRM_Conf_Setup['conf_plugindbver'] = $this->db_version;
16011608

16021609
// Not needed yet :) do_action( 'before_zerobscrm_settings_init' );
@@ -2192,8 +2199,8 @@ public function include_updater() {
21922199
$this->update_api_version,
21932200
ZBS_ROOTFILE,
21942201
array(
2195-
'version' => $this->version,
2196-
'license' => false, // license initiated to false..
2202+
'version' => $this::VERSION,
2203+
'license' => false, // license initiated to false..
21972204
)
21982205
);
21992206
}

includes/ZeroBSCRM.MetaBoxes3.Forms.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -584,7 +584,7 @@ public function html( $form, $metabox ) {
584584
$zbsfs = 'simple'; if (is_array($form) && isset($form['style'])) $zbsfs = $form['style'];
585585

586586
// get js url
587-
$formjs = ZEROBSCRM_URL . 'js/ZeroBSCRM.leadform.js?ver='.$zbs->version;
587+
$formjs = ZEROBSCRM_URL . 'js/ZeroBSCRM.leadform.js?ver=' . $zbs::VERSION;
588588

589589
?><div id="form-embed">
590590
<h1 class="welcomeh1"><?php esc_html_e('Embed Code',"zero-bs-crm");?></h1>

includes/ZeroBSCRM.NotifyMe.php

+30-31
Original file line numberDiff line numberDiff line change
@@ -62,40 +62,39 @@ function zeroBSCRM_notifyme_createDBtable(){
6262

6363

6464
function zeroBSCRM_notifyme_scripts(){
65-
66-
global $zbs;
67-
wp_enqueue_script("jquery");
68-
wp_enqueue_script('notifyme-front', ZEROBSCRM_URL . 'js/lib/notifyme-front.min.js',array('jquery'), $zbs->version );
69-
wp_enqueue_style('notifyme-css', ZEROBSCRM_URL . 'css/lib/notifyme-front.min.css', array(), $zbs->version );
70-
71-
#} this does the browser notifications
72-
wp_register_script( 'notifyme_push', ZEROBSCRM_URL . 'js/lib/push.min.js', array( 'jquery' ) , $zbs->version, true );
73-
wp_enqueue_script( 'notifyme_push' );
74-
75-
#} this stores things in cookies, so not to keep notifying
76-
wp_register_script( 'notifyme_cookie', ZEROBSCRM_URL . 'js/lib/cookie.min.js', array( 'jquery' ) , $zbs->version, true );
77-
wp_enqueue_script( 'notifyme_cookie' );
78-
79-
#} this is the browser notification icon.
80-
$notify_logo = jpcrm_get_logo();
81-
82-
#} this is which user to notify for..
83-
$cid = get_current_user_id();
84-
85-
#} we want to browser notify our users :-)
86-
$notification_meta['browser_push'] = 1;
87-
$args = array(
88-
'ph_notify_logo' => $notify_logo,
89-
'current_user' => $cid,
90-
'notification_nonce' => wp_create_nonce( "notifyme_nonce" ),
91-
'notification_settings' => $notification_meta,
92-
'ajaxurl' => admin_url( 'admin-ajax.php' )
93-
);
94-
wp_localize_script('notifyme_push','notifyme',$args);
65+
global $zbs;
66+
wp_enqueue_script( 'jquery' );
67+
wp_enqueue_script( 'notifyme-front', ZEROBSCRM_URL . 'js/lib/notifyme-front.min.js', array( 'jquery' ), $zbs::VERSION ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.NotInFooter
68+
wp_enqueue_style( 'notifyme-css', ZEROBSCRM_URL . 'css/lib/notifyme-front.min.css', array(), $zbs::VERSION );
69+
70+
#} this does the browser notifications
71+
wp_register_script( 'notifyme_push', ZEROBSCRM_URL . 'js/lib/push.min.js', array( 'jquery' ), $zbs::VERSION, true );
72+
wp_enqueue_script( 'notifyme_push' );
73+
74+
#} this stores things in cookies, so not to keep notifying
75+
wp_register_script( 'notifyme_cookie', ZEROBSCRM_URL . 'js/lib/cookie.min.js', array( 'jquery' ), $zbs::VERSION, true );
76+
wp_enqueue_script( 'notifyme_cookie' );
77+
78+
#} this is the browser notification icon.
79+
$notify_logo = jpcrm_get_logo();
80+
81+
#} this is which user to notify for..
82+
$cid = get_current_user_id();
83+
84+
#} we want to browser notify our users :-)
85+
$notification_meta = array( 'browser_push' => 1 );
86+
87+
$args = array(
88+
'ph_notify_logo' => $notify_logo,
89+
'current_user' => $cid,
90+
'notification_nonce' => wp_create_nonce( 'notifyme_nonce' ),
91+
'notification_settings' => $notification_meta,
92+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
93+
);
94+
wp_localize_script( 'notifyme_push', 'notifyme', $args );
9595
}
9696
add_action( 'zbs-global-admin-styles', 'zeroBSCRM_notifyme_scripts' );
9797

98-
9998
//ADD ANY CORE FUNCTIONS FOR THE PLUGIN HERE
10099
function zeroBSCRM_notify_me(){
101100
global $zbs;

includes/ZeroBSCRM.OnboardMe.php

+3-3
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ function zeroBS_onboardme_scripts(){
2929

3030
// Changed from bootstrap tour to hopscotch
3131
wp_enqueue_script( 'jquery' );
32-
wp_enqueue_script( 'onboardme-front', ZEROBSCRM_URL . 'js/lib/hopscotch.min.js', array( 'jquery' ), $zbs->version, true );
33-
wp_enqueue_style( 'onboardme-css', ZEROBSCRM_URL . 'css/lib/hopscotch.min.css', array(), $zbs->version );
34-
wp_enqueue_script( 'tour-front', ZEROBSCRM_URL . 'js/ZeroBSCRM.admin.tour' . wp_scripts_get_suffix() . '.js', array( 'jquery', 'onboardme-front' ), $zbs->version, true );
32+
wp_enqueue_script( 'onboardme-front', ZEROBSCRM_URL . 'js/lib/hopscotch.min.js', array( 'jquery' ), $zbs::VERSION, true );
33+
wp_enqueue_style( 'onboardme-css', ZEROBSCRM_URL . 'css/lib/hopscotch.min.css', array(), $zbs::VERSION );
34+
wp_enqueue_script( 'tour-front', ZEROBSCRM_URL . 'js/ZeroBSCRM.admin.tour' . wp_scripts_get_suffix() . '.js', array( 'jquery', 'onboardme-front' ), $zbs::VERSION, true );
3535

3636
$zbs_tour_root = admin_url();
3737

0 commit comments

Comments
 (0)