Skip to content

Commit 2682f58

Browse files
refactor: load tracking and banner using internal pages
1 parent 3481503 commit 2682f58

File tree

3 files changed

+55
-38
lines changed

3 files changed

+55
-38
lines changed

feedzy-rss-feed.php

-2
Original file line numberDiff line numberDiff line change
@@ -284,8 +284,6 @@ function feedzy_import_job_logs( $name, $msg, $type ) {
284284
}
285285
add_action( 'themeisle_log_event', 'feedzy_import_job_logs', 20, 3 );
286286

287-
add_filter( 'themeisle_sdk_enable_telemetry', '__return_true' );
288-
289287
add_filter(
290288
'feedzy_rss_feeds_float_widget_metadata', function () {
291289
return array(

includes/admin/feedzy-rss-feeds-admin.php

+51-36
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,33 @@ function( $data, $page_slug ) {
7676
2
7777
);
7878
}
79+
80+
/**
81+
* Load SDK dependencies.
82+
*/
83+
add_filter( 'themeisle_internal_page', function( $product_name, $page_slug ) {
84+
if ( $product_name !== $this->plugin_name ) {
85+
return;
86+
}
87+
88+
if ( in_array( $page_slug, array( 'imports', 'categories' ), true ) ) {
89+
$this->add_banner_anchor();
90+
}
91+
92+
if ( in_array( $page_slug, array( 'imports', 'categories', 'settings' ), true ) ) {
93+
$license_data = get_option( 'feedzy_rss_feeds_pro_license_data', array() );
94+
if ( self::plan_category( $license_data ) <= 1 ) {
95+
do_action( 'themeisle_sdk_load_banner', 'feedzy' );
96+
}
97+
}
98+
99+
if (
100+
in_array( $page_slug, array( 'imports', 'new-category', 'settings' ), true )
101+
&& 'yes' === get_option( 'feedzy_rss_feeds_logger_flag', false )
102+
) {
103+
$this->enable_telemetry();
104+
}
105+
}, 10, 2 );
79106
}
80107

81108
/**
@@ -133,22 +160,8 @@ public function enqueue_styles_admin() {
133160
return;
134161
}
135162

136-
$telemetry_enabled = get_option( 'feedzy_rss_feeds_logger_flag', false );
137-
if ( ! defined( 'TI_CYPRESS_TESTING' ) &&
138-
! empty( $telemetry_enabled ) &&
139-
(
140-
'feedzy_categories' === $screen->post_type ||
141-
'feedzy_page_feedzy-settings' === $screen->base ||
142-
'feedzy_imports' === $screen->post_type
143-
)
144-
) {
145-
wp_enqueue_script( $this->plugin_name . '_telemetry', FEEDZY_ABSURL . 'js/telemetry.js', array(), $this->version, true );
146-
}
147-
148163
if ( 'feedzy_imports' === $screen->post_type && 'edit' === $screen->base ) {
149164
$this->do_internal_page( 'imports' );
150-
151-
$this->add_banner_anchor();
152165
}
153166

154167
if ( 'feedzy_categories' === $screen->post_type ) {
@@ -175,7 +188,6 @@ public function enqueue_styles_admin() {
175188
),
176189
)
177190
);
178-
$this->add_banner_anchor();
179191
}
180192

181193
if ( 'feedzy_page_feedzy-settings' === $screen->base || 'feedzy_page_feedzy-integration' === $screen->base ) {
@@ -197,17 +209,6 @@ public function enqueue_styles_admin() {
197209
);
198210
}
199211

200-
if (
201-
'feedzy_page_feedzy-settings' === $screen->base ||
202-
'feedzy_categories' === $screen->post_type ||
203-
( 'feedzy_imports' === $screen->post_type && 'edit' === $screen->base )
204-
) {
205-
$license_data = get_option( 'feedzy_rss_feeds_pro_license_data', array() );
206-
if ( self::plan_category( $license_data ) <= 1 ) {
207-
do_action( 'themeisle_sdk_load_banner', 'feedzy' );
208-
}
209-
}
210-
211212
$upsell_screens = array( 'feedzy-rss_page_feedzy-settings', 'feedzy-rss_page_feedzy-admin-menu-pro-upsell' );
212213
if ( 'feedzy_imports' === $screen->post_type && 'edit' !== $screen->base ) {
213214

@@ -252,11 +253,13 @@ public function enqueue_styles_admin() {
252253
wp_enqueue_style( 'wp-block-editor' );
253254

254255
wp_set_script_translations( $this->plugin_name . '_conditions', 'feedzy-rss-feeds' );
256+
$this->enable_telemetry();
255257
}
256258
if ( ! defined( 'TI_CYPRESS_TESTING' ) && ( 'edit' !== $screen->base && 'feedzy_imports' === $screen->post_type && feedzy_show_import_tour() ) ) {
257259
$asset_file = include FEEDZY_ABSPATH . '/build/onboarding/index.asset.php';
258260
wp_enqueue_script( $this->plugin_name . '_on_boarding', FEEDZY_ABSURL . 'build/onboarding/index.js', array_merge( $asset_file['dependencies'], array( 'wp-editor', 'wp-api' ) ), $asset_file['version'], true );
259261
wp_set_script_translations( $this->plugin_name . '_on_boarding', 'feedzy-rss-feeds' );
262+
$this->enable_telemetry();
260263
}
261264

262265
if ( 'feedzy_page_feedzy-settings' === $screen->base ) {
@@ -2064,7 +2067,8 @@ public function get_survey_data() {
20642067
$integration_status = $this->api_license_status();
20652068

20662069
$days_since_install = round( ( time() - get_option( 'feedzy_rss_feeds_install', time() ) ) / DAY_IN_SECONDS );
2067-
$install_category = 0;
2070+
$install_category = 0;
2071+
20682072
if ( 0 === $days_since_install || 1 === $days_since_install ) {
20692073
$install_category = 0;
20702074
} elseif ( 1 < $days_since_install && 8 > $days_since_install ) {
@@ -2077,14 +2081,8 @@ public function get_survey_data() {
20772081
$install_category = 91;
20782082
}
20792083

2080-
$masked_key_license = null;
2081-
if ( isset( $license_data->key) ) {
2082-
$masked_key_license = str_repeat( '*', strlen( $license_data->key ) / 2 ) . substr( $license_data->key, strlen( $license_data->key ) / 2 );
2083-
}
2084-
2085-
return array(
2084+
$survey_data = array(
20862085
'environmentId' => 'clskgehf78eu5podwdrnzciti',
2087-
'apiHost' => 'https://app.formbricks.com',
20882086
'attributes' => array(
20892087
'free_version' => $this->version,
20902088
'pro_version' => defined( 'FEEDZY_PRO_VERSION' ) ? FEEDZY_PRO_VERSION : '',
@@ -2095,10 +2093,15 @@ public function get_survey_data() {
20952093
'plan' => $this->plan_category( $license_data ),
20962094
'days_since_install' => $install_category,
20972095
'install_days_number' => $days_since_install,
2098-
'license_status' => ! empty( $license_data->license ) ? $license_data->license : 'invalid',
2099-
'license_key' => $masked_key_license
2096+
'license_status' => ! empty( $license_data->license ) ? $license_data->license : 'invalid'
21002097
),
21012098
);
2099+
2100+
if ( isset( $license_data->key ) ) {
2101+
$survey_data['attributes']['license_key'] = apply_filters( 'themeisle_sdk_secret_masking', $license_data->key );
2102+
}
2103+
2104+
return $survey_data;
21022105
}
21032106

21042107
/**
@@ -2348,4 +2351,16 @@ public function register_settings() {
23482351
private function do_internal_page( $page_slug ) {
23492352
do_action( 'themeisle_internal_page', $this->plugin_name, $page_slug );
23502353
}
2354+
2355+
/**
2356+
* Enable the loading of telemetry script in page.
2357+
*/
2358+
private function enable_telemetry() {
2359+
if ( defined( 'E2E_TESTING' ) ) {
2360+
return;
2361+
}
2362+
2363+
add_filter( 'themeisle_sdk_enable_telemetry', '__return_true' );
2364+
wp_enqueue_script( $this->plugin_name . '_telemetry', FEEDZY_ABSURL . 'js/telemetry.js', array(), $this->version, true );
2365+
}
23512366
}

includes/gutenberg/feedzy-rss-feeds-gutenberg-block.php

+4
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,10 @@ public function feedzy_gutenberg_scripts() {
8181
// Enqueue editor block styles
8282
wp_enqueue_style( 'feedzy-block-css', FEEDZY_ABSURL . 'css/feedzy-rss-feeds.css', array(), $this->version );
8383
wp_enqueue_style( 'feedzy-gutenberg-block-css', FEEDZY_ABSURL . 'build/block/style-index.css', array(), $this->version );
84+
85+
if ( ! defined( 'TE2E_TESTING' ) ) {
86+
add_filter( 'themeisle_sdk_enable_telemetry', '__return_true' );
87+
}
8488
}
8589

8690
/**

0 commit comments

Comments
 (0)