Passed
Push — master ( 8403c0...3ede7f )
by Chris
08:42
created
includes/auth.php 1 patch
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -206,7 +206,7 @@
 block discarded – undo
206 206
 			$is_dual_tracking_id_ua = monsterinsights_is_valid_ua( $id );
207 207
 
208 208
 			$is_valid_dual_tracking_id = ( $is_dual_tracking_id_ua && ( $is_manual_v4 || $is_authed_v4 ) ) ||
209
-			                             ( $is_dual_tracking_id_v4 && ( $is_manual_ua || $is_authed_ua ) );
209
+						     ( $is_dual_tracking_id_v4 && ( $is_manual_ua || $is_authed_ua ) );
210 210
 
211 211
 			if ( ! $is_valid_dual_tracking_id ) {
212 212
 				return false;
Please login to merge, or discard this patch.
includes/admin/admin.php 1 patch
Indentation   +163 added lines, -163 removed lines patch added patch discarded remove patch
@@ -27,22 +27,22 @@  discard block
 block discarded – undo
27 27
     $menu_icon_inline = monsterinsights_get_inline_menu_icon();
28 28
 
29 29
     if ( $hook === 'monsterinsights_settings' ) {
30
-        // If dashboards disabled, first settings page
31
-        add_menu_page( __( 'MonsterInsights', 'google-analytics-for-wordpress' ), __( 'Insights', 'google-analytics-for-wordpress' ) . MonsterInsights()->notifications->get_menu_count(), 'monsterinsights_save_settings', 'monsterinsights_settings', 'monsterinsights_settings_page',  $menu_icon_inline, '100.00013467543' );
32
-        $hook = 'monsterinsights_settings';
30
+	// If dashboards disabled, first settings page
31
+	add_menu_page( __( 'MonsterInsights', 'google-analytics-for-wordpress' ), __( 'Insights', 'google-analytics-for-wordpress' ) . MonsterInsights()->notifications->get_menu_count(), 'monsterinsights_save_settings', 'monsterinsights_settings', 'monsterinsights_settings_page',  $menu_icon_inline, '100.00013467543' );
32
+	$hook = 'monsterinsights_settings';
33 33
 
34
-        add_submenu_page( $hook, __( 'MonsterInsights', 'google-analytics-for-wordpress' ), __( 'Settings', 'google-analytics-for-wordpress' ), 'monsterinsights_save_settings', 'monsterinsights_settings' );
34
+	add_submenu_page( $hook, __( 'MonsterInsights', 'google-analytics-for-wordpress' ), __( 'Settings', 'google-analytics-for-wordpress' ), 'monsterinsights_save_settings', 'monsterinsights_settings' );
35 35
     } else {
36
-        // if dashboards enabled, first dashboard
37
-        add_menu_page( __( 'General:', 'google-analytics-for-wordpress' ), __( 'Insights', 'google-analytics-for-wordpress' ) . MonsterInsights()->notifications->get_menu_count(), 'monsterinsights_view_dashboard', 'monsterinsights_reports', 'monsterinsights_reports_page',  $menu_icon_inline, '100.00013467543' );
36
+	// if dashboards enabled, first dashboard
37
+	add_menu_page( __( 'General:', 'google-analytics-for-wordpress' ), __( 'Insights', 'google-analytics-for-wordpress' ) . MonsterInsights()->notifications->get_menu_count(), 'monsterinsights_view_dashboard', 'monsterinsights_reports', 'monsterinsights_reports_page',  $menu_icon_inline, '100.00013467543' );
38 38
 
39
-        add_submenu_page( $hook, __( 'General Reports:', 'google-analytics-for-wordpress' ), __( 'Reports', 'google-analytics-for-wordpress' ), 'monsterinsights_view_dashboard', 'monsterinsights_reports', 'monsterinsights_reports_page' );
39
+	add_submenu_page( $hook, __( 'General Reports:', 'google-analytics-for-wordpress' ), __( 'Reports', 'google-analytics-for-wordpress' ), 'monsterinsights_view_dashboard', 'monsterinsights_reports', 'monsterinsights_reports_page' );
40 40
 
41
-        // then settings page
42
-        add_submenu_page( $hook, __( 'MonsterInsights', 'google-analytics-for-wordpress' ), __( 'Settings', 'google-analytics-for-wordpress' ), 'monsterinsights_save_settings', 'monsterinsights_settings', 'monsterinsights_settings_page' );
41
+	// then settings page
42
+	add_submenu_page( $hook, __( 'MonsterInsights', 'google-analytics-for-wordpress' ), __( 'Settings', 'google-analytics-for-wordpress' ), 'monsterinsights_save_settings', 'monsterinsights_settings', 'monsterinsights_settings_page' );
43 43
 
44
-        // Add dashboard submenu.
45
-        add_submenu_page( 'index.php', __( 'General Reports:', 'google-analytics-for-wordpress' ), __( 'Insights', 'google-analytics-for-wordpress' ), 'monsterinsights_view_dashboard', 'admin.php?page=monsterinsights_reports' );
44
+	// Add dashboard submenu.
45
+	add_submenu_page( 'index.php', __( 'General Reports:', 'google-analytics-for-wordpress' ), __( 'Insights', 'google-analytics-for-wordpress' ), 'monsterinsights_view_dashboard', 'admin.php?page=monsterinsights_reports' );
46 46
     }
47 47
 
48 48
     $submenu_base = add_query_arg( 'page', 'monsterinsights_settings', admin_url( 'admin.php' ) );
@@ -51,9 +51,9 @@  discard block
 block discarded – undo
51 51
 	add_submenu_page( $hook, __( 'Popular Posts:', 'google-analytics-for-wordpress' ), __( 'Popular Posts', 'google-analytics-for-wordpress' ), 'monsterinsights_save_settings', $submenu_base . '#/popular-posts' );
52 52
 
53 53
     if ( function_exists( 'aioseo' ) ) {
54
-        $seo_url = monsterinsights_aioseo_dashboard_url();
54
+	$seo_url = monsterinsights_aioseo_dashboard_url();
55 55
     } else {
56
-        $seo_url = $submenu_base . '#/seo';
56
+	$seo_url = $submenu_base . '#/seo';
57 57
     }
58 58
     // then SEO
59 59
     add_submenu_page( $hook, __( 'SEO', 'google-analytics-for-wordpress' ), __( 'SEO', 'google-analytics-for-wordpress' ), 'manage_options', $seo_url );
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
     // then addons
65 65
     $network_key = monsterinsights_is_pro_version() ? MonsterInsights()->license->get_network_license_key() : '';
66 66
     if ( ! monsterinsights_is_network_active() || ( monsterinsights_is_network_active() && empty( $network_key ) ) ) {
67
-        add_submenu_page( $hook, __( 'Addons:', 'google-analytics-for-wordpress' ), '<span style="color:' . monsterinsights_menu_highlight_color() . '"> ' . __( 'Addons', 'google-analytics-for-wordpress' ) . '</span>', 'monsterinsights_save_settings', $submenu_base . '#/addons' );
67
+	add_submenu_page( $hook, __( 'Addons:', 'google-analytics-for-wordpress' ), '<span style="color:' . monsterinsights_menu_highlight_color() . '"> ' . __( 'Addons', 'google-analytics-for-wordpress' ) . '</span>', 'monsterinsights_save_settings', $submenu_base . '#/addons' );
68 68
     }
69 69
 
70 70
     // Add About us page.
@@ -97,9 +97,9 @@  discard block
 block discarded – undo
97 97
 function monsterinsights_get_menu_hook() {
98 98
     $dashboards_disabled = monsterinsights_get_option( 'dashboards_disabled', false );
99 99
     if ( $dashboards_disabled || ( current_user_can( 'monsterinsights_save_settings' ) && ! current_user_can( 'monsterinsights_view_dashboard' ) ) ) {
100
-        return 'monsterinsights_settings';
100
+	return 'monsterinsights_settings';
101 101
     } else {
102
-        return 'monsterinsights_reports';
102
+	return 'monsterinsights_reports';
103 103
     }
104 104
 }
105 105
 
@@ -110,12 +110,12 @@  discard block
 block discarded – undo
110 110
     // First, let's see if this is an MS network enabled plugin. If it is, we should load the license
111 111
     // menu page and the updater on the network panel
112 112
     if ( ! function_exists( 'is_plugin_active_for_network' ) ) {
113
-        require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
113
+	require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
114 114
     }
115 115
 
116 116
     $plugin = plugin_basename( MONSTERINSIGHTS_PLUGIN_FILE );
117 117
     if ( ! is_plugin_active_for_network( $plugin ) ) {
118
-        return;
118
+	return;
119 119
     }
120 120
 
121 121
     $menu_icon_inline = monsterinsights_get_inline_menu_icon();
@@ -128,9 +128,9 @@  discard block
 block discarded – undo
128 128
     add_submenu_page( $hook, __( 'General Reports:', 'google-analytics-for-wordpress' ), __( 'Reports', 'google-analytics-for-wordpress' ), 'monsterinsights_view_dashboard', 'monsterinsights_reports', 'monsterinsights_reports_page' );
129 129
 
130 130
     if ( function_exists( 'aioseo' ) ) {
131
-        $seo_url = monsterinsights_aioseo_dashboard_url();
131
+	$seo_url = monsterinsights_aioseo_dashboard_url();
132 132
     } else {
133
-        $seo_url = $submenu_base . '#/seo';
133
+	$seo_url = $submenu_base . '#/seo';
134 134
     }
135 135
     // then seo
136 136
     add_submenu_page( $hook, __( 'SEO:', 'google-analytics-for-wordpress' ), __( 'SEO', 'google-analytics-for-wordpress' ), 'manage_options', $seo_url, 'monsterinsights_seo_page' );
@@ -154,7 +154,7 @@  discard block
 block discarded – undo
154 154
 function monsterinsights_add_admin_body_class( $classes ) {
155 155
     $screen = function_exists( 'get_current_screen' ) ? get_current_screen() : false;
156 156
     if ( empty( $screen ) || empty( $screen->id ) || strpos( $screen->id, 'monsterinsights' ) === false ) {
157
-        return $classes;
157
+	return $classes;
158 158
     }
159 159
 
160 160
     return "$classes monsterinsights_page ";
@@ -171,7 +171,7 @@  discard block
 block discarded – undo
171 171
     $screen = function_exists( 'get_current_screen' ) ? get_current_screen() : false;
172 172
 
173 173
     if ( empty( $screen ) || empty( $screen->id ) || strpos( $screen->id, 'monsterinsights_tools' ) === false || 'insights_page_monsterinsights_tools' === $screen->id  ) {
174
-        return $classes;
174
+	return $classes;
175 175
     }
176 176
 
177 177
     return "$classes insights_page_monsterinsights_tools ";
@@ -187,7 +187,7 @@  discard block
 block discarded – undo
187 187
 function monsterinsights_add_admin_body_class_addons_page( $classes ) {
188 188
     $screen = function_exists( 'get_current_screen' ) ? get_current_screen() : false;
189 189
     if ( empty( $screen ) || empty( $screen->id ) || strpos( $screen->id, 'monsterinsights_addons' ) === false || 'insights_page_monsterinsights_addons' === $screen->id  ) {
190
-        return $classes;
190
+	return $classes;
191 191
     }
192 192
 
193 193
     return "$classes insights_page_monsterinsights_addons ";
@@ -207,11 +207,11 @@  discard block
 block discarded – undo
207 207
 
208 208
     // If Lite, support goes to forum. If pro, it goes to our website
209 209
     if ( monsterinsights_is_pro_version() ) {
210
-        $support = '<a title="MonsterInsights Pro Support" href="'. monsterinsights_get_url( 'all-plugins', 'pro-support-link', "https://www.monsterinsights.com/my-account/support/" ) .'">' . esc_html__( 'Support', 'google-analytics-for-wordpress' ) . '</a>';
211
-        array_unshift( $links, $support );
210
+	$support = '<a title="MonsterInsights Pro Support" href="'. monsterinsights_get_url( 'all-plugins', 'pro-support-link', "https://www.monsterinsights.com/my-account/support/" ) .'">' . esc_html__( 'Support', 'google-analytics-for-wordpress' ) . '</a>';
211
+	array_unshift( $links, $support );
212 212
     } else {
213
-        $support = '<a title="MonsterInsights Lite Support" href="'. monsterinsights_get_url( 'all-plugins', 'lite-support-link', "https://www.monsterinsights.com/lite-support/" ) .'">' . esc_html__( 'Support', 'google-analytics-for-wordpress' ) . '</a>';
214
-        array_unshift( $links, $support );
213
+	$support = '<a title="MonsterInsights Lite Support" href="'. monsterinsights_get_url( 'all-plugins', 'lite-support-link', "https://www.monsterinsights.com/lite-support/" ) .'">' . esc_html__( 'Support', 'google-analytics-for-wordpress' ) . '</a>';
214
+	array_unshift( $links, $support );
215 215
     }
216 216
 
217 217
 	if ( is_network_admin() ) {
@@ -246,26 +246,26 @@  discard block
 block discarded – undo
246 246
 function monsterinsights_load_admin_partial( $template, $data = array() ) {
247 247
 
248 248
     if ( monsterinsights_is_pro_version() ) {
249
-        $dir = trailingslashit( plugin_dir_path( MonsterInsights()->file ) . 'pro/includes/admin/partials' );
249
+	$dir = trailingslashit( plugin_dir_path( MonsterInsights()->file ) . 'pro/includes/admin/partials' );
250 250
 
251
-        if ( file_exists( $dir . $template . '.php' ) ) {
252
-            require_once(  $dir . $template . '.php' );
253
-            return true;
254
-        }
251
+	if ( file_exists( $dir . $template . '.php' ) ) {
252
+	    require_once(  $dir . $template . '.php' );
253
+	    return true;
254
+	}
255 255
     } else {
256
-        $dir = trailingslashit( plugin_dir_path( MonsterInsights()->file ) . 'lite/includes/admin/partials' );
256
+	$dir = trailingslashit( plugin_dir_path( MonsterInsights()->file ) . 'lite/includes/admin/partials' );
257 257
 
258
-        if ( file_exists( $dir . $template . '.php' ) ) {
259
-            require_once(  $dir . $template . '.php' );
260
-            return true;
261
-        }
258
+	if ( file_exists( $dir . $template . '.php' ) ) {
259
+	    require_once(  $dir . $template . '.php' );
260
+	    return true;
261
+	}
262 262
     }
263 263
 
264 264
     $dir = trailingslashit( plugin_dir_path( MonsterInsights()->file ) . 'includes/admin/partials' );
265 265
 
266 266
     if ( file_exists( $dir . $template . '.php' ) ) {
267
-        require_once(  $dir . $template . '.php' );
268
-        return true;
267
+	require_once(  $dir . $template . '.php' );
268
+	return true;
269 269
     }
270 270
 
271 271
     return false;
@@ -282,9 +282,9 @@  discard block
 block discarded – undo
282 282
 function monsterinsights_admin_footer( $text ) {
283 283
     global $current_screen;
284 284
     if ( ! empty( $current_screen->id ) && strpos( $current_screen->id, 'monsterinsights' ) !== false ) {
285
-        $url  = 'https://wordpress.org/support/view/plugin-reviews/google-analytics-for-wordpress?filter=5';
286
-        // Translators: Placeholders add a link to the wordpress.org repository.
287
-        $text = sprintf( esc_html__( 'Please rate %1$sMonsterInsights%2$s on %3$s %4$sWordPress.org%5$s to help us spread the word. Thank you from the MonsterInsights team!', 'google-analytics-for-wordpress' ), '<strong>', '</strong>', '<a class="monsterinsights-no-text-decoration" href="' .  $url . '" target="_blank" rel="noopener noreferrer"><i class="monstericon-star"></i><i class="monstericon-star"></i><i class="monstericon-star"></i><i class="monstericon-star"></i><i class="monstericon-star"></i></a>', '<a href="' . $url . '" target="_blank" rel="noopener noreferrer">', '</a>' );
285
+	$url  = 'https://wordpress.org/support/view/plugin-reviews/google-analytics-for-wordpress?filter=5';
286
+	// Translators: Placeholders add a link to the wordpress.org repository.
287
+	$text = sprintf( esc_html__( 'Please rate %1$sMonsterInsights%2$s on %3$s %4$sWordPress.org%5$s to help us spread the word. Thank you from the MonsterInsights team!', 'google-analytics-for-wordpress' ), '<strong>', '</strong>', '<a class="monsterinsights-no-text-decoration" href="' .  $url . '" target="_blank" rel="noopener noreferrer"><i class="monstericon-star"></i><i class="monstericon-star"></i><i class="monstericon-star"></i><i class="monstericon-star"></i><i class="monstericon-star"></i></a>', '<a href="' . $url . '" target="_blank" rel="noopener noreferrer">', '</a>' );
288 288
     }
289 289
     return $text;
290 290
 }
@@ -295,12 +295,12 @@  discard block
 block discarded – undo
295 295
     // Don't show on MonsterInsights pages
296 296
     $screen = get_current_screen();
297 297
     if ( empty( $screen->id ) || strpos( $screen->id, 'monsterinsights' ) !== false ) {
298
-        return;
298
+	return;
299 299
     }
300 300
 
301 301
     // Make sure they have the permissions to do something
302 302
     if ( ! current_user_can( 'monsterinsights_save_settings' ) ) {
303
-        return;
303
+	return;
304 304
     }
305 305
 
306 306
     // Priority:
@@ -318,58 +318,58 @@  discard block
 block discarded – undo
318 318
     // 1. Google Analytics not authenticated
319 319
 	if ( ! is_network_admin() && ! monsterinsights_get_ua() && ! monsterinsights_get_v4_id() && ! defined( 'MONSTERINSIGHTS_DISABLE_TRACKING' ) ) {
320 320
 
321
-        $submenu_base = is_network_admin() ? add_query_arg( 'page', 'monsterinsights_network', network_admin_url( 'admin.php' ) ) : add_query_arg( 'page', 'monsterinsights_settings', admin_url( 'admin.php' ) );
322
-        $title     = esc_html__( 'Please Setup Website Analytics to See Audience Insights', 'google-analytics-for-wordpress' );
323
-        $primary   = esc_html__( 'Connect MonsterInsights and Setup Website Analytics', 'google-analytics-for-wordpress' );
324
-        $urlone    = is_network_admin() ? network_admin_url( 'admin.php?page=monsterinsights-onboarding' ) : admin_url( 'admin.php?page=monsterinsights-onboarding' );
325
-        $secondary = esc_html__( 'Learn More', 'google-analytics-for-wordpress' );
326
-        $urltwo    = $submenu_base . '#/about/getting-started';
327
-        $message   = esc_html__( 'MonsterInsights, WordPress analytics plugin, helps you connect your website with Google Analytics, so you can see how people find and use your website. Over 3 million website owners use MonsterInsights to see the stats that matter and grow their business.', 'google-analytics-for-wordpress' );
328
-        echo '<div class="notice notice-info"><p style="font-weight:700">'. $title .'</p><p>'. $message.'</p><p><a href="'. $urlone .'" class="button-primary">'. $primary .'</a>&nbsp;&nbsp;&nbsp;<a href="'. $urltwo .'" class="button-secondary">'. $secondary .'</a></p></div>';
329
-        return;
321
+	$submenu_base = is_network_admin() ? add_query_arg( 'page', 'monsterinsights_network', network_admin_url( 'admin.php' ) ) : add_query_arg( 'page', 'monsterinsights_settings', admin_url( 'admin.php' ) );
322
+	$title     = esc_html__( 'Please Setup Website Analytics to See Audience Insights', 'google-analytics-for-wordpress' );
323
+	$primary   = esc_html__( 'Connect MonsterInsights and Setup Website Analytics', 'google-analytics-for-wordpress' );
324
+	$urlone    = is_network_admin() ? network_admin_url( 'admin.php?page=monsterinsights-onboarding' ) : admin_url( 'admin.php?page=monsterinsights-onboarding' );
325
+	$secondary = esc_html__( 'Learn More', 'google-analytics-for-wordpress' );
326
+	$urltwo    = $submenu_base . '#/about/getting-started';
327
+	$message   = esc_html__( 'MonsterInsights, WordPress analytics plugin, helps you connect your website with Google Analytics, so you can see how people find and use your website. Over 3 million website owners use MonsterInsights to see the stats that matter and grow their business.', 'google-analytics-for-wordpress' );
328
+	echo '<div class="notice notice-info"><p style="font-weight:700">'. $title .'</p><p>'. $message.'</p><p><a href="'. $urlone .'" class="button-primary">'. $primary .'</a>&nbsp;&nbsp;&nbsp;<a href="'. $urltwo .'" class="button-secondary">'. $secondary .'</a></p></div>';
329
+	return;
330 330
     }
331 331
 
332 332
     // 2. License key not entered for pro
333 333
     $key = monsterinsights_is_pro_version() ? MonsterInsights()->license->get_license_key() : '';
334 334
     if ( monsterinsights_is_pro_version() && empty( $key ) ) {
335
-        $page = is_network_admin() ? network_admin_url( 'admin.php?page=monsterinsights_network' ) : admin_url( 'admin.php?page=monsterinsights_settings' );
336
-        // Translators: Adds a link to retrieve the license.
337
-        $message = sprintf( esc_html__( 'Warning: No valid license key has been entered for MonsterInsights. You are currently not getting updates, and are not able to view reports. %1$sPlease click here to enter your license key and begin receiving updates and reports.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. esc_url( $page ) . '">', '</a>' );
338
-        echo '<div class="error"><p>'. $message.'</p></div>';
339
-        return;
335
+	$page = is_network_admin() ? network_admin_url( 'admin.php?page=monsterinsights_network' ) : admin_url( 'admin.php?page=monsterinsights_settings' );
336
+	// Translators: Adds a link to retrieve the license.
337
+	$message = sprintf( esc_html__( 'Warning: No valid license key has been entered for MonsterInsights. You are currently not getting updates, and are not able to view reports. %1$sPlease click here to enter your license key and begin receiving updates and reports.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. esc_url( $page ) . '">', '</a>' );
338
+	echo '<div class="error"><p>'. $message.'</p></div>';
339
+	return;
340 340
     }
341 341
 
342 342
     // 3. License key not valid/okay for pro
343 343
     if ( monsterinsights_is_pro_version() ) {
344
-        $message = '';
345
-        if ( MonsterInsights()->license->get_site_license_key() ){
346
-            if ( MonsterInsights()->license->site_license_expired() ) {
347
-	            // Translators: Adds a link to the license renewal.
348
-                $message = sprintf( esc_html__( 'Your license key for MonsterInsights has expired. %1$sPlease click here to renew your license key.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. monsterinsights_get_url( 'admin-notices', 'expired-license', "https://www.monsterinsights.com/login/" ) .'" target="_blank" rel="noopener noreferrer" referrer="no-referrer">', '</a>' );
349
-            } else if ( MonsterInsights()->license->site_license_disabled() ) {
350
-                $message = esc_html__( 'Your license key for MonsterInsights has been disabled. Please use a different key.', 'google-analytics-for-wordpress' );
351
-            } else if ( MonsterInsights()->license->site_license_invalid() ) {
352
-                $message = esc_html__( 'Your license key for MonsterInsights is invalid. The key no longer exists or the user associated with the key has been deleted. Please use a different key.', 'google-analytics-for-wordpress' );
353
-            }
354
-        } else if ( MonsterInsights()->license->get_network_license_key() ) {
355
-            if ( MonsterInsights()->license->network_license_expired() ) {
356
-            	// Translators: Adds a link to renew license.
357
-                $message = sprintf( esc_html__( 'Your network license key for MonsterInsights has expired. %1$sPlease click here to renew your license key.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. monsterinsights_get_url( 'admin-notices', 'expired-license', "https://www.monsterinsights.com/login/" ) .'" target="_blank" rel="noopener noreferrer" referrer="no-referrer">', '</a>' );
358
-            } else if ( MonsterInsights()->license->network_license_disabled() ) {
359
-                $message = esc_html__( 'Your network license key for MonsterInsights has been disabled. Please use a different key.', 'google-analytics-for-wordpress' );
360
-            } else if ( MonsterInsights()->license->network_license_invalid() ) {
361
-                $message = esc_html__( 'Your network license key for MonsterInsights is invalid. The key no longer exists or the user associated with the key has been deleted. Please use a different key.', 'google-analytics-for-wordpress' );
362
-            }
363
-        }
364
-        if ( ! empty( $message ) ) {
365
-            echo '<div class="error"><p>'. $message.'</p></div>';
366
-            return;
367
-        }
344
+	$message = '';
345
+	if ( MonsterInsights()->license->get_site_license_key() ){
346
+	    if ( MonsterInsights()->license->site_license_expired() ) {
347
+		    // Translators: Adds a link to the license renewal.
348
+		$message = sprintf( esc_html__( 'Your license key for MonsterInsights has expired. %1$sPlease click here to renew your license key.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. monsterinsights_get_url( 'admin-notices', 'expired-license', "https://www.monsterinsights.com/login/" ) .'" target="_blank" rel="noopener noreferrer" referrer="no-referrer">', '</a>' );
349
+	    } else if ( MonsterInsights()->license->site_license_disabled() ) {
350
+		$message = esc_html__( 'Your license key for MonsterInsights has been disabled. Please use a different key.', 'google-analytics-for-wordpress' );
351
+	    } else if ( MonsterInsights()->license->site_license_invalid() ) {
352
+		$message = esc_html__( 'Your license key for MonsterInsights is invalid. The key no longer exists or the user associated with the key has been deleted. Please use a different key.', 'google-analytics-for-wordpress' );
353
+	    }
354
+	} else if ( MonsterInsights()->license->get_network_license_key() ) {
355
+	    if ( MonsterInsights()->license->network_license_expired() ) {
356
+	    	// Translators: Adds a link to renew license.
357
+		$message = sprintf( esc_html__( 'Your network license key for MonsterInsights has expired. %1$sPlease click here to renew your license key.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. monsterinsights_get_url( 'admin-notices', 'expired-license', "https://www.monsterinsights.com/login/" ) .'" target="_blank" rel="noopener noreferrer" referrer="no-referrer">', '</a>' );
358
+	    } else if ( MonsterInsights()->license->network_license_disabled() ) {
359
+		$message = esc_html__( 'Your network license key for MonsterInsights has been disabled. Please use a different key.', 'google-analytics-for-wordpress' );
360
+	    } else if ( MonsterInsights()->license->network_license_invalid() ) {
361
+		$message = esc_html__( 'Your network license key for MonsterInsights is invalid. The key no longer exists or the user associated with the key has been deleted. Please use a different key.', 'google-analytics-for-wordpress' );
362
+	    }
363
+	}
364
+	if ( ! empty( $message ) ) {
365
+	    echo '<div class="error"><p>'. $message.'</p></div>';
366
+	    return;
367
+	}
368 368
     }
369 369
 
370 370
     // 4. Notices for PHP/WP version deprecations
371 371
     if ( current_user_can( 'update_core' ) ) {
372
-        global $wp_version;
372
+	global $wp_version;
373 373
 
374 374
 	    $compatible_php_version = apply_filters( 'monsterinsights_compatible_php_version', false );
375 375
 	    $compatible_wp_version  = apply_filters( 'monsterinsights_compatible_wp_version', false );
@@ -393,28 +393,28 @@  discard block
 block discarded – undo
393 393
 		    return;
394 394
 	    }
395 395
 
396
-        // WordPress 4.9
397
-        /* else if ( version_compare( $wp_version, '5.0', '<' ) ) {
396
+	// WordPress 4.9
397
+	/* else if ( version_compare( $wp_version, '5.0', '<' ) ) {
398 398
             $url = monsterinsights_get_url( 'global-notice', 'settings-page', 'https://www.monsterinsights.com/docs/update-wordpress/' );
399 399
             // Translators: Placeholders add the current WordPress version and links to the MonsterInsights blog
400 400
             $message = sprintf( esc_html__( 'Your site is running an outdated version of WordPress (%1$s).%4$sMonsterInsights will stop supporting WordPress versions lower than 5.0 in 2021.%4$sUpdating WordPress takes just a few minutes and will also solve many bugs that exist in your WordPress install.%4$s%2$sLearn more about updating WordPress%3$s', 'google-analytics-for-wordpress' ), $wp_version, '<a href="' . $url . '" target="_blank">', '</a>', '<br>' );
401 401
             echo '<div class="error"><p>'. $message.'</p></div>';
402 402
             return;
403 403
         } */
404
-        // PHP 5.4/5.5
405
-        // else if ( version_compare( phpversion(), '5.6', '<' ) ) {
406
-        //  $url = monsterinsights_get_url( 'global-notice', 'settings-page', 'https://www.monsterinsights.com/docs/update-php/' );
407
-        //  $message = sprintf( esc_html__( 'Your site is running an outdated, insecure version of PHP (%1$s), which could be putting your site at risk for being hacked.%4$sWordPress will stop supporting your PHP version in April, 2019.%4$sUpdating PHP only takes a few minutes and will make your website significantly faster and more secure.%4$s%2$sLearn more about updating PHP%3$s', 'google-analytics-for-wordpress' ), phpversion(), '<a href="' . $url . '" target="_blank">', '</a>', '<br>' );
408
-        //  echo '<div class="error"><p>'. $message.'</p></div>';
409
-        //  return;
410
-        // }
411
-        // // WordPress 4.6 - 4.8
412
-        // else if ( version_compare( $wp_version, '4.9', '<' ) ) {
413
-        //  $url = monsterinsights_get_url( 'global-notice', 'settings-page', 'https://www.monsterinsights.com/docs/update-wordpress/' );
414
-        //  $message = sprintf( esc_html__( 'Your site is running an outdated version of WordPress (%1$s).%4$sMonsterInsights will stop supporting WordPress versions lower than 4.9 in October, 2019.%4$sUpdating WordPress takes just a few minutes and will also solve many bugs that exist in your WordPress install.%4$s%2$sLearn more about updating WordPress%3$s', 'google-analytics-for-wordpress' ), $wp_version, '<a href="' . $url . '" target="_blank">', '</a>', '<br>' );
415
-        //  echo '<div class="error"><p>'. $message.'</p></div>';
416
-        //  return;
417
-        // }
404
+	// PHP 5.4/5.5
405
+	// else if ( version_compare( phpversion(), '5.6', '<' ) ) {
406
+	//  $url = monsterinsights_get_url( 'global-notice', 'settings-page', 'https://www.monsterinsights.com/docs/update-php/' );
407
+	//  $message = sprintf( esc_html__( 'Your site is running an outdated, insecure version of PHP (%1$s), which could be putting your site at risk for being hacked.%4$sWordPress will stop supporting your PHP version in April, 2019.%4$sUpdating PHP only takes a few minutes and will make your website significantly faster and more secure.%4$s%2$sLearn more about updating PHP%3$s', 'google-analytics-for-wordpress' ), phpversion(), '<a href="' . $url . '" target="_blank">', '</a>', '<br>' );
408
+	//  echo '<div class="error"><p>'. $message.'</p></div>';
409
+	//  return;
410
+	// }
411
+	// // WordPress 4.6 - 4.8
412
+	// else if ( version_compare( $wp_version, '4.9', '<' ) ) {
413
+	//  $url = monsterinsights_get_url( 'global-notice', 'settings-page', 'https://www.monsterinsights.com/docs/update-wordpress/' );
414
+	//  $message = sprintf( esc_html__( 'Your site is running an outdated version of WordPress (%1$s).%4$sMonsterInsights will stop supporting WordPress versions lower than 4.9 in October, 2019.%4$sUpdating WordPress takes just a few minutes and will also solve many bugs that exist in your WordPress install.%4$s%2$sLearn more about updating WordPress%3$s', 'google-analytics-for-wordpress' ), $wp_version, '<a href="' . $url . '" target="_blank">', '</a>', '<br>' );
415
+	//  echo '<div class="error"><p>'. $message.'</p></div>';
416
+	//  return;
417
+	// }
418 418
     }
419 419
 
420 420
     // 5. Optin setting not configured
@@ -444,7 +444,7 @@  discard block
 block discarded – undo
444 444
 
445 445
     $notices   = get_option( 'monsterinsights_notices' );
446 446
     if ( ! is_array( $notices ) ) {
447
-        $notices = array();
447
+	$notices = array();
448 448
     }
449 449
 
450 450
     // 6. Authenticate, not manual
@@ -488,75 +488,75 @@  discard block
 block discarded – undo
488 488
 
489 489
     // 8. WooUpsell
490 490
     if ( ! monsterinsights_is_pro_version() && class_exists( 'WooCommerce' ) ) {
491
-        if ( ! isset( $notices['monsterinsights_woocommerce_tracking_available' ] ) ) {
492
-            echo '<div class="notice notice-success is-dismissible monsterinsights-notice monsterinsights-wooedd-upsell-row" data-notice="monsterinsights_woocommerce_tracking_available">';
493
-                echo '<div class="monsterinsights-wooedd-upsell-left">';
494
-                    echo '<p><strong>';
495
-                    echo esc_html( 'Enhanced Ecommerce Analytics for Your WooCommerce Store', 'google-analytics-for-wordpress' );
496
-                    echo '</strong></p>';
497
-                    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-small" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
498
-                    echo '<p>';
499
-                    echo esc_html( 'MonsterInsights Pro gives you detailed stats and insights about your customers.', 'google-analytics-for-wordpress' );
500
-                    echo '</p>';
501
-                    echo '<p>';
502
-                    echo esc_html( 'This helps you make data-driven decisions about your content, and marketing strategy so you can increase your website traffic, leads, and sales.', 'google-analytics-for-wordpress' );
503
-                    echo '</p>';
504
-                    echo '<p>';
505
-                    echo esc_html( 'Pro customers also get Form Tracking, Custom Dimensions Tracking, UserID Tracking and much more.', 'google-analytics-for-wordpress' );
506
-                    echo '</p>';
507
-                    echo '<p>';
508
-                    echo esc_html( 'Start making data-driven decisions to grow your business.', 'google-analytics-for-wordpress' );
509
-                    echo '</p>';
510
-                    // Translators: Placeholders add a link to the MonsterInsights website.
511
-                    echo sprintf( esc_html__( '%1$sGet MonsterInsights Pro%2$s', 'google-analytics-for-wordpress' ), '<a class="button button-primary button-hero" href="'. monsterinsights_get_upgrade_link( 'admin-notices', 'woocommerce-upgrade' ) .'">', ' &raquo;</a>' );
512
-                    echo '</p>';
513
-                echo '</div><div class="monsterinsights-wooedd-upsell-right">';
514
-                    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-large" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
515
-                echo '</div>';
516
-            echo '</div>';
517
-            echo '<style type="text/css">.monsterinsights-wooedd-upsell-left{width:50%;display:table-cell;float:left}.monsterinsights-wooedd-upsell-right{width:50%;display:table-cell;float:left}.monsterinsights-wooedd-upsell-image{width:100%;height:auto;padding:20px}.monsterinsights-wooedd-upsell-image-small{display:none}.monsterinsights-wooedd-upsell-row{display:table}.monsterinsights-wooedd-upsell-left p{margin:1em 0;font-size:16px}@media (max-width:900px){.monsterinsights-wooedd-upsell-left{width:100%}.monsterinsights-wooedd-upsell-right{display:none}.monsterinsights-wooedd-upsell-image-small{display:block}.monsterinsights-wooedd-upsell-image-large{display:none}}</style>';
518
-            return;
519
-        }
491
+	if ( ! isset( $notices['monsterinsights_woocommerce_tracking_available' ] ) ) {
492
+	    echo '<div class="notice notice-success is-dismissible monsterinsights-notice monsterinsights-wooedd-upsell-row" data-notice="monsterinsights_woocommerce_tracking_available">';
493
+		echo '<div class="monsterinsights-wooedd-upsell-left">';
494
+		    echo '<p><strong>';
495
+		    echo esc_html( 'Enhanced Ecommerce Analytics for Your WooCommerce Store', 'google-analytics-for-wordpress' );
496
+		    echo '</strong></p>';
497
+		    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-small" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
498
+		    echo '<p>';
499
+		    echo esc_html( 'MonsterInsights Pro gives you detailed stats and insights about your customers.', 'google-analytics-for-wordpress' );
500
+		    echo '</p>';
501
+		    echo '<p>';
502
+		    echo esc_html( 'This helps you make data-driven decisions about your content, and marketing strategy so you can increase your website traffic, leads, and sales.', 'google-analytics-for-wordpress' );
503
+		    echo '</p>';
504
+		    echo '<p>';
505
+		    echo esc_html( 'Pro customers also get Form Tracking, Custom Dimensions Tracking, UserID Tracking and much more.', 'google-analytics-for-wordpress' );
506
+		    echo '</p>';
507
+		    echo '<p>';
508
+		    echo esc_html( 'Start making data-driven decisions to grow your business.', 'google-analytics-for-wordpress' );
509
+		    echo '</p>';
510
+		    // Translators: Placeholders add a link to the MonsterInsights website.
511
+		    echo sprintf( esc_html__( '%1$sGet MonsterInsights Pro%2$s', 'google-analytics-for-wordpress' ), '<a class="button button-primary button-hero" href="'. monsterinsights_get_upgrade_link( 'admin-notices', 'woocommerce-upgrade' ) .'">', ' &raquo;</a>' );
512
+		    echo '</p>';
513
+		echo '</div><div class="monsterinsights-wooedd-upsell-right">';
514
+		    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-large" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
515
+		echo '</div>';
516
+	    echo '</div>';
517
+	    echo '<style type="text/css">.monsterinsights-wooedd-upsell-left{width:50%;display:table-cell;float:left}.monsterinsights-wooedd-upsell-right{width:50%;display:table-cell;float:left}.monsterinsights-wooedd-upsell-image{width:100%;height:auto;padding:20px}.monsterinsights-wooedd-upsell-image-small{display:none}.monsterinsights-wooedd-upsell-row{display:table}.monsterinsights-wooedd-upsell-left p{margin:1em 0;font-size:16px}@media (max-width:900px){.monsterinsights-wooedd-upsell-left{width:100%}.monsterinsights-wooedd-upsell-right{display:none}.monsterinsights-wooedd-upsell-image-small{display:block}.monsterinsights-wooedd-upsell-image-large{display:none}}</style>';
518
+	    return;
519
+	}
520 520
     }
521 521
 
522 522
     // 9. EDDUpsell
523 523
     if ( ! monsterinsights_is_pro_version() && class_exists( 'Easy_Digital_Downloads' ) ) {
524
-        if ( ! isset( $notices['monsterinsights_edd_tracking_available' ] ) ) {
525
-            echo '<div class="notice notice-success is-dismissible monsterinsights-notice monsterinsights-wooedd-upsell-row" data-notice="monsterinsights_edd_tracking_available">';
526
-                echo '<div class="monsterinsights-wooedd-upsell-left">';
527
-                    echo '<p><strong>';
528
-                    echo esc_html( 'Enhanced Ecommerce Analytics for Your Easy Digital Downloads Store', 'google-analytics-for-wordpress' );
529
-                    echo '</strong></p>';
530
-                    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-small" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
531
-                    echo '<p>';
532
-                    echo esc_html( 'MonsterInsights Pro gives you detailed stats and insights about your customers.', 'google-analytics-for-wordpress' );
533
-                    echo '</p>';
534
-                    echo '<p>';
535
-                    echo esc_html( 'This helps you make data-driven decisions about your content, and marketing strategy so you can increase your website traffic, leads, and sales.', 'google-analytics-for-wordpress' );
536
-                    echo '</p>';
537
-                    echo '<p>';
538
-                    echo esc_html( 'Pro customers also get Form Tracking, Custom Dimensions Tracking, UserID Tracking and much more.', 'google-analytics-for-wordpress' );
539
-                    echo '</p>';
540
-                    echo '<p>';
541
-                    echo esc_html( 'Start making data-driven decisions to grow your business.', 'google-analytics-for-wordpress' );
542
-                    echo '</p>';
543
-                    echo sprintf( esc_html__( '%1$sGet MonsterInsights Pro%2$s', 'google-analytics-for-wordpress' ), '<a class="button button-primary button-hero" href="'. monsterinsights_get_upgrade_link( 'admin-notices', 'edd-upgrade' ) .'">', ' &raquo;</a>' );
544
-                    echo '</p>';
545
-                echo '</div><div class="monsterinsights-wooedd-upsell-right">';
546
-                    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-large" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
547
-                echo '</div>';
548
-            echo '</div>';
549
-            return;
550
-        }
524
+	if ( ! isset( $notices['monsterinsights_edd_tracking_available' ] ) ) {
525
+	    echo '<div class="notice notice-success is-dismissible monsterinsights-notice monsterinsights-wooedd-upsell-row" data-notice="monsterinsights_edd_tracking_available">';
526
+		echo '<div class="monsterinsights-wooedd-upsell-left">';
527
+		    echo '<p><strong>';
528
+		    echo esc_html( 'Enhanced Ecommerce Analytics for Your Easy Digital Downloads Store', 'google-analytics-for-wordpress' );
529
+		    echo '</strong></p>';
530
+		    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-small" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
531
+		    echo '<p>';
532
+		    echo esc_html( 'MonsterInsights Pro gives you detailed stats and insights about your customers.', 'google-analytics-for-wordpress' );
533
+		    echo '</p>';
534
+		    echo '<p>';
535
+		    echo esc_html( 'This helps you make data-driven decisions about your content, and marketing strategy so you can increase your website traffic, leads, and sales.', 'google-analytics-for-wordpress' );
536
+		    echo '</p>';
537
+		    echo '<p>';
538
+		    echo esc_html( 'Pro customers also get Form Tracking, Custom Dimensions Tracking, UserID Tracking and much more.', 'google-analytics-for-wordpress' );
539
+		    echo '</p>';
540
+		    echo '<p>';
541
+		    echo esc_html( 'Start making data-driven decisions to grow your business.', 'google-analytics-for-wordpress' );
542
+		    echo '</p>';
543
+		    echo sprintf( esc_html__( '%1$sGet MonsterInsights Pro%2$s', 'google-analytics-for-wordpress' ), '<a class="button button-primary button-hero" href="'. monsterinsights_get_upgrade_link( 'admin-notices', 'edd-upgrade' ) .'">', ' &raquo;</a>' );
544
+		    echo '</p>';
545
+		echo '</div><div class="monsterinsights-wooedd-upsell-right">';
546
+		    echo '<img class="monsterinsights-wooedd-upsell-image monsterinsights-wooedd-upsell-image-large" src="' . trailingslashit( MONSTERINSIGHTS_PLUGIN_URL ) . 'assets/images/upsell/woo-edd-upsell.png">';
547
+		echo '</div>';
548
+	    echo '</div>';
549
+	    return;
550
+	}
551 551
     }
552 552
 
553 553
     if ( isset( $notices['monsterinsights_cross_domains_extracted'] ) && false === $notices['monsterinsights_cross_domains_extracted'] ) {
554
-        $page = is_network_admin() ? network_admin_url( 'admin.php?page=monsterinsights_network' ) : admin_url( 'admin.php?page=monsterinsights_settings' );
555
-        $page = $page . '#/advanced';
556
-        // Translators: Adds a link to the settings panel.
557
-        $message = sprintf( esc_html__( 'Warning: MonsterInsights found cross-domain settings in the custom code field and converted them to the new settings structure.  %1$sPlease click here to review and remove the code no longer needed.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. esc_url( $page ) . '">', '</a>' );
558
-        echo '<div class="notice notice-success is-dismissible monsterinsights-notice" data-notice="monsterinsights_cross_domains_extracted"><p>'. $message.'</p></div>';
559
-        return;
554
+	$page = is_network_admin() ? network_admin_url( 'admin.php?page=monsterinsights_network' ) : admin_url( 'admin.php?page=monsterinsights_settings' );
555
+	$page = $page . '#/advanced';
556
+	// Translators: Adds a link to the settings panel.
557
+	$message = sprintf( esc_html__( 'Warning: MonsterInsights found cross-domain settings in the custom code field and converted them to the new settings structure.  %1$sPlease click here to review and remove the code no longer needed.%2$s', 'google-analytics-for-wordpress' ), '<a href="'. esc_url( $page ) . '">', '</a>' );
558
+	echo '<div class="notice notice-success is-dismissible monsterinsights-notice" data-notice="monsterinsights_cross_domains_extracted"><p>'. $message.'</p></div>';
559
+	return;
560 560
     }
561 561
 }
562 562
 add_action( 'admin_notices', 'monsterinsights_admin_setup_notices' );
@@ -566,7 +566,7 @@  discard block
 block discarded – undo
566 566
 // AM Notices
567 567
 function monsterinsights_am_notice_optout( $super_admin ) {
568 568
     if ( monsterinsights_get_option( 'hide_am_notices', false ) || monsterinsights_get_option( 'network_hide_am_notices', false ) ) {
569
-        return false;
569
+	return false;
570 570
     }
571 571
     return $super_admin;
572 572
 }
Please login to merge, or discard this patch.