PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.10.8
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.10.8
4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 3.10.4 All 148 releases
← All changes | index.php +65 -7 3.1.33.10.8 View file →
@@ -1,13 +1,14 @@
1 1 <?php
2 -
3 2 /*
4 - Plugin Name: Visualizer: Tables and Charts Manager for WordPress (Lite)
5 - Plugin URI: https://themeisle.com/plugins/visualizer-charts-and-graphs-lite/
3 + Plugin Name: Visualizer: Tables and Charts for WordPress
4 + Plugin URI: https://themeisle.com/plugins/visualizer-charts-and-graphs/
6 5 Description: A simple, easy to use and quite powerful tool to create, manage and embed interactive charts into your WordPress posts and pages. The plugin uses Google Visualization API to render charts, which supports cross-browser compatibility (adopting VML for older IE versions) and cross-platform portability to iOS and new Android releases.
7 - Version: 3.1.3
6 + Version: 3.10.8
8 7 Author: Themeisle
9 8 Author URI: http://themeisle.com
9 + Requires at least: 5.2
10 + Tested up to: 5.6
10 11 License: GPL v2.0 or later
11 12 WordPress Available: yes
12 13 Requires License: no
13 14 Pro Slug: visualizer-pro
@@ -22,8 +23,10 @@
22 23 // don't load the plugin, if it has been already loaded
23 24 if ( class_exists( 'Visualizer_Plugin', false ) ) {
24 25 return;
25 26 }
27 +
28 +// support for pro versions before 3.3.0
26 29 if ( class_exists( 'Visualizer_Pro', false ) ) {
27 30 define( 'VISUALIZER_PRO', true );
28 31 } else {
29 32 defined( 'VISUALIZER_PRO' ) || define( 'VISUALIZER_PRO', false );
@@ -41,9 +44,9 @@
41 44 */
42 45 function visualizer_autoloader( $class ) {
43 46 $namespaces = array( 'Visualizer' );
44 47 foreach ( $namespaces as $namespace ) {
45 - if ( substr( $class, 0, strlen( $namespace ) ) == $namespace ) {
48 + if ( substr( $class, 0, strlen( $namespace ) ) === $namespace ) {
46 49 $filename = dirname( __FILE__ ) . str_replace( '_', DIRECTORY_SEPARATOR, "_classes_{$class}.php" );
47 50 if ( is_readable( $filename ) ) {
48 51 require $filename;
49 52
@@ -65,11 +68,15 @@
65 68 define( 'VISUALIZER_BASEFILE', __FILE__ );
66 69 define( 'VISUALIZER_BASENAME', plugin_basename( __FILE__ ) );
67 70 define( 'VISUALIZER_ABSURL', plugins_url( '/', __FILE__ ) );
68 71 define( 'VISUALIZER_ABSPATH', dirname( __FILE__ ) );
72 + define( 'VISUALIZER_DIRNAME', basename( VISUALIZER_ABSPATH ) );
69 73 define( 'VISUALIZER_REST_VERSION', 1 );
70 74 // if the below is true, then the js/customization.js in the plugin folder will be used instead of the one in the uploads folder (if it exists).
71 - define( 'VISUALIZER_TEST_JS_CUSTOMIZATION', false );
75 + // this is also used in Block.php
76 + if ( ! defined( 'VISUALIZER_TEST_JS_CUSTOMIZATION' ) ) {
77 + define( 'VISUALIZER_TEST_JS_CUSTOMIZATION', false );
78 + }
72 79
73 80 if ( ! defined( 'VISUALIZER_CSV_DELIMITER' ) ) {
74 81 define( 'VISUALIZER_CSV_DELIMITER', ',' );
75 82 }
@@ -86,9 +93,17 @@
86 93 define( 'VISUALIZER_ENABLE_BETA_FEATURES', '' );
87 94
88 95 // the link to pre-build queries.
89 96 define( 'VISUALIZER_DB_QUERY_DOC_URL', 'https://docs.themeisle.com/article/970-visualizer-sample-queries-to-generate-charts' );
97 + define( 'VISUALIZER_MAIN_DOC', 'https://docs.themeisle.com/category/657-visualizer' );
98 + define( 'VISUALIZER_DOC_COLLECTION', 'https://docs.themeisle.com/search?collectionId=561ec249c69791452ed4bceb&query=#+visualizer' );
99 + define( 'VISUALIZER_DEMO_URL', 'https://demo.themeisle.com/visualizer/#' );
100 + define( 'VISUALIZER_CODE_SNIPPETS_URL', 'https://docs.themeisle.com/category/726-visualizer' );
101 + define( 'VISUALIZER_SUBSCRIBE_API', 'https://api.themeisle.com/tracking/subscribe' );
90 102
103 + // to redirect all themeisle_log_event to error log.
104 + define( 'VISUALIZER_LOCAL_DEBUG', false );
105 +
91 106 // instantiate the plugin
92 107 $plugin = Visualizer_Plugin::instance();
93 108
94 109 // instantiate Gutenberg block
@@ -99,11 +114,13 @@
99 114 }}
100 115 );
101 116
102 117 // set general modules
118 + $plugin->setModule( Visualizer_Module_Utility::NAME );
103 119 $plugin->setModule( Visualizer_Module_Setup::NAME );
104 120 $plugin->setModule( Visualizer_Module_Sources::NAME );
105 121 $plugin->setModule( Visualizer_Module_Chart::NAME );
122 +
106 123 if ( is_admin() || defined( 'WP_TESTS_DOMAIN' ) ) {
107 124 // set admin modules
108 125 $plugin->setModule( Visualizer_Module_Admin::NAME );
109 126 }
@@ -110,14 +127,41 @@
110 127
111 128 // set frontend modules
112 129 $plugin->setModule( Visualizer_Module_Frontend::NAME );
113 130
114 - $vendor_file = VISUALIZER_ABSPATH . '/vendor/autoload_52.php';
131 + $plugin->setModule( Visualizer_Module_AMP::NAME );
132 +
133 + // Set setup wizard module.
134 + $plugin->setModule( Visualizer_Module_Wizard::NAME );
135 +
136 + $vendor_file = VISUALIZER_ABSPATH . '/vendor/autoload.php';
115 137 if ( is_readable( $vendor_file ) ) {
116 138 include_once( $vendor_file );
117 139 }
118 140 add_filter( 'themeisle_sdk_products', 'visualizer_register_sdk', 10, 1 );
119 141 add_filter( 'pirate_parrot_log', 'visualizer_register_parrot', 10, 1 );
142 + add_filter(
143 + 'themeisle_sdk_compatibilities/' . VISUALIZER_DIRNAME, function ( $compatibilities ) {
144 + $compatibilities['VisualizerPRO'] = array(
145 + 'basefile' => defined( 'VISUALIZER_PRO_BASEFILE' ) ? VISUALIZER_PRO_BASEFILE : '',
146 + 'required' => '1.8',
147 + 'tested_up' => '1.13',
148 + );
149 + return $compatibilities;
150 + }
151 + );
152 + add_filter(
153 + 'visualizer_about_us_metadata',
154 + function() {
155 + return array(
156 + 'logo' => esc_url( VISUALIZER_ABSURL . 'images/visualizer-logo.svg' ),
157 + 'location' => 'visualizer',
158 + 'has_upgrade_menu' => ! Visualizer_Module::is_pro(),
159 + 'upgrade_text' => esc_html__( 'Get Visualizer Pro', 'feedzy-rss-feeds' ),
160 + 'upgrade_link' => esc_url( tsdk_utmify( Visualizer_Plugin::PRO_TEASER_URL, 'aboutUsPage' ) ),
161 + );
162 + }
163 + );
120 164 }
121 165
122 166 /**
123 167 * Registers with the SDK
@@ -142,4 +186,18 @@
142 186 // register autoloader function
143 187 spl_autoload_register( 'visualizer_autoloader' );
144 188 // launch the plugin
145 189 visualizer_launch();
190 +
191 +
192 +if ( VISUALIZER_LOCAL_DEBUG ) {
193 + add_action( 'themeisle_log_event', 'visualizer_themeisle_log_event', 10, 5 );
194 +
195 + /**
196 + * Redirect themeisle_log_event to error log.
197 + */
198 + function visualizer_themeisle_log_event( $name, $msg, $type, $file, $line ) {
199 + if ( $name === Visualizer_Plugin::NAME ) {
200 + error_log( sprintf( '%s (%s:%d): %s', $type, $file, $line, $msg ) );
201 + }
202 + }
203 +}