PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.7.9
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.7.9
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 +36 -5 3.1.23.7.9 View file →
@@ -1,13 +1,14 @@
1 1 <?php
2 -
3 2 /*
4 - Plugin Name: Visualizer: Tables and Charts Manager for WordPress (Lite)
3 + Plugin Name: Visualizer: Tables and Charts for WordPress
5 4 Plugin URI: https://themeisle.com/plugins/visualizer-charts-and-graphs-lite/
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.2
6 + Version: 3.7.9
8 7 Author: Themeisle
9 8 Author URI: http://themeisle.com
9 + Requires at least: 3.5
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
@@ -62,12 +65,14 @@
62 65 */
63 66 function visualizer_launch() {
64 67 // setup environment
65 68 define( 'VISUALIZER_BASEFILE', __FILE__ );
69 + define( 'VISUALIZER_BASENAME', plugin_basename( __FILE__ ) );
66 70 define( 'VISUALIZER_ABSURL', plugins_url( '/', __FILE__ ) );
67 71 define( 'VISUALIZER_ABSPATH', dirname( __FILE__ ) );
68 72 define( 'VISUALIZER_REST_VERSION', 1 );
69 73 // 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).
74 + // this is also used in Block.php
70 75 define( 'VISUALIZER_TEST_JS_CUSTOMIZATION', false );
71 76
72 77 if ( ! defined( 'VISUALIZER_CSV_DELIMITER' ) ) {
73 78 define( 'VISUALIZER_CSV_DELIMITER', ',' );
@@ -85,9 +90,16 @@
85 90 define( 'VISUALIZER_ENABLE_BETA_FEATURES', '' );
86 91
87 92 // the link to pre-build queries.
88 93 define( 'VISUALIZER_DB_QUERY_DOC_URL', 'https://docs.themeisle.com/article/970-visualizer-sample-queries-to-generate-charts' );
94 + define( 'VISUALIZER_MAIN_DOC', 'https://docs.themeisle.com/category/657-visualizer' );
95 + define( 'VISUALIZER_DOC_COLLECTION', 'https://docs.themeisle.com/search?collectionId=561ec249c69791452ed4bceb&query=#+visualizer' );
96 + define( 'VISUALIZER_DEMO_URL', 'https://demo.themeisle.com/visualizer/#' );
97 + define( 'VISUALIZER_CODE_SNIPPETS_URL', 'https://docs.themeisle.com/category/726-visualizer' );
89 98
99 + // to redirect all themeisle_log_event to error log.
100 + define( 'VISUALIZER_LOCAL_DEBUG', false );
101 +
90 102 // instantiate the plugin
91 103 $plugin = Visualizer_Plugin::instance();
92 104
93 105 // instantiate Gutenberg block
@@ -98,11 +110,13 @@
98 110 }}
99 111 );
100 112
101 113 // set general modules
114 + $plugin->setModule( Visualizer_Module_Utility::NAME );
102 115 $plugin->setModule( Visualizer_Module_Setup::NAME );
103 116 $plugin->setModule( Visualizer_Module_Sources::NAME );
104 117 $plugin->setModule( Visualizer_Module_Chart::NAME );
118 +
105 119 if ( is_admin() || defined( 'WP_TESTS_DOMAIN' ) ) {
106 120 // set admin modules
107 121 $plugin->setModule( Visualizer_Module_Admin::NAME );
108 122 }
@@ -109,14 +123,17 @@
109 123
110 124 // set frontend modules
111 125 $plugin->setModule( Visualizer_Module_Frontend::NAME );
112 126
113 - $vendor_file = VISUALIZER_ABSPATH . '/vendor/autoload_52.php';
127 + $plugin->setModule( Visualizer_Module_AMP::NAME );
128 +
129 + $vendor_file = VISUALIZER_ABSPATH . '/vendor/autoload.php';
114 130 if ( is_readable( $vendor_file ) ) {
115 131 include_once( $vendor_file );
116 132 }
117 133 add_filter( 'themeisle_sdk_products', 'visualizer_register_sdk', 10, 1 );
118 134 add_filter( 'pirate_parrot_log', 'visualizer_register_parrot', 10, 1 );
135 +
119 136 }
120 137
121 138 /**
122 139 * Registers with the SDK
@@ -141,4 +158,18 @@
141 158 // register autoloader function
142 159 spl_autoload_register( 'visualizer_autoloader' );
143 160 // launch the plugin
144 161 visualizer_launch();
162 +
163 +
164 +if ( VISUALIZER_LOCAL_DEBUG ) {
165 + add_action( 'themeisle_log_event', 'visualizer_themeisle_log_event', 10, 5 );
166 +
167 + /**
168 + * Redirect themeisle_log_event to error log.
169 + */
170 + function visualizer_themeisle_log_event( $name, $msg, $type, $file, $line ) {
171 + if ( $name === Visualizer_Plugin::NAME ) {
172 + error_log( sprintf( '%s (%s:%d): %s', $type, $file, $line, $msg ) );
173 + }
174 + }
175 +}