PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 4.0.8
Visualizer – Tables & Charts Manager with Built-in AI Generator v4.0.8
4.0.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 All 149 releases
← All changes | classes/Visualizer/Module/Wizard.php +10 -1 4.0.34.0.8 View file →
@@ -152,8 +152,14 @@
152 152 * @param bool $redirect_to_dashboard Redirect to dashboard.
153 153 * @return bool|void
154 154 */
155 155 public function dismissWizard( $redirect_to_dashboard = true ) {
156 + if ( ! current_user_can( 'manage_options' ) ) {
157 + wp_die( esc_html__( 'You do not have permission to perform this action.', 'visualizer' ), '', array( 'response' => 403 ) );
158 + }
159 + if ( false !== $redirect_to_dashboard ) {
160 + check_admin_referer( 'visualizer_dismiss_wizard' );
161 + }
156 162 // phpcs:ignore WordPress.Security.NonceVerification.Recommended
157 163 $status = isset( $_REQUEST['status'] ) ? (int) $_REQUEST['status'] : 0;
158 164 update_option( 'visualizer_fresh_install', $status );
159 165 delete_option( 'visualizer_wizard_data' );
@@ -168,8 +174,11 @@
168 174 * Setup wizard process.
169 175 */
170 176 public function visualizer_wizard_step_process() {
171 177 check_ajax_referer( VISUALIZER_ABSPATH, 'security' );
178 + if ( ! current_user_can( 'manage_options' ) ) {
179 + wp_send_json( array( 'status' => 0 ), 403 );
180 + }
172 181 $step = ! empty( $_POST['step'] ) ? sanitize_text_field( wp_unslash( $_POST['step'] ) ) : 1;
173 182 switch ( $step ) {
174 183 case 'step_2':
175 184 $this->setup_wizard_import_chart();
@@ -233,9 +242,9 @@
233 242 update_post_meta( $chart_id, Visualizer_Plugin::CF_SOURCE, $source->getSourceName() );
234 243 update_post_meta( $chart_id, Visualizer_Plugin::CF_SERIES, $series );
235 244 update_post_meta( $chart_id, Visualizer_Plugin::CF_CHART_LIBRARY, '' );
236 245
237 - $data = maybe_unserialize( $data );
246 + $data = Visualizer_Module::decode_content( $data );
238 247 $setting_series = array();
239 248 $setting_slices = array();
240 249 foreach ( $data as $s ) {
241 250 $setting_series[] = array(